RANDARRAY関数の詳細解説(Excel)
RANDARRAY関数は、Excelで指定した範囲内でランダムな数値・乱数の配列を生成する非常に便利な関数です。この関数を使用することで、データ分析やシミュレーションに役立つランダムなデータを簡単に生成することができます。本記事では、RANDARRAY関数の基本から応用例まで詳しく解説し、実際の業務でどのように活用できるかを紹介します。
RANDARRAY関数の基本
RANDARRAY関数は乱数の配列を生成します。RAND関数やRANDBETWEEN関数と異なり、スピル型の配列を返します。
まず、RANDARRAY関数の構文と各引数について説明します。
関数の構文
RANDARRAY([rows], [columns], [min], [max], [whole_number])
引数の説明
- 行 (rows): 生成する配列の行数を指定します。省略した場合は1行になります。
- 列 (columns): 生成する配列の列数を指定します。省略した場合は1列になります。
- 最小 (min): 生成されるランダム数値の最小値を指定します。省略した場合は0になります。
- 最大 (max): 生成されるランダム数値の最大値を指定します。省略した場合は1になります。
- 整数 (whole_number): TRUEの場合は整数値を生成し、FALSEまたは省略した場合は小数値を生成します。
基本的な使用例
1. ランダムな小数値の生成
=RANDARRAY(3, 4)
これは3行4列のランダムな小数値の配列を生成します。
2. 範囲指定されたランダム小数値の生成
=RANDARRAY(2, 5, 10, 20)
これは2行5列の、10から20の間のランダムな小数値の配列を生成します。
3. 範囲指定されたランダム整数の生成
=RANDARRAY(4, 2, 1, 100, TRUE)
これは4行2列の、1から100の間のランダムな整数の配列を生成します。
他の関数との連携
SEQUENCE関数との組み合わせ
SEQUENCE関数は、連続する数値の配列を生成します。RANDARRAY関数と組み合わせることで、連続した数値とランダムな数値を一緒に生成できます。
=SEQUENCE(10, 1, 1, 1) & RANDARRAY(10, 1, 1, 100, TRUE)
この例では、1から10までの連続する数値と1から100までのランダムな整数を組み合わせて表示します。
INDEX関数との組み合わせ
INDEX関数は、指定した範囲内から特定の要素を返します。RANDARRAY関数と組み合わせることで、大規模データセットからランダムにサンプルを抽出できます。
=INDEX(SEQUENCE(1000, 1, 1, 1), RANDARRAY(20, 1, 1, 1000, TRUE))
この例では、1から1000までのデータセットからランダムに20個のサンプルを抽出します。
SUM関数との組み合わせ
SUM関数は、指定した範囲の数値の合計を求めます。RANDARRAY関数で生成されたデータの合計を求める場合に使用できます。
=SUM(RANDARRAY(10, 1, 1, 100, TRUE))
この例では、1から100の範囲内で生成されたランダムな10個の整数の合計を求めます。
応用例
1. ランダムなサンプルデータセットの生成
社員IDとランダムな給与データサンプルを生成する場合の例です。
A1:A10 = SEQUENCE(10, 1, 1001, 1) B1:B10 = RANDARRAY(10, 1, 30000, 120000, TRUE)
この例では、A1からA10に社員ID(1001から順に)、B1からB10にランダムな給与データサンプル(30000から120000の範囲の整数)が生成されます。
2. ランダムなテストスコア例の生成
学生のテストスコアをランダムに生成して、成績表の例を作成する場合の例です。
A1:A10 = SEQUENCE(10, 1, 1, 1) // 学生ID B1:B10 = RANDARRAY(10, 1, 0, 100, TRUE) // 数学スコア C1:C10 = RANDARRAY(10, 1, 0, 100, TRUE) // 英語スコア D1:D10 = RANDARRAY(10, 1, 0, 100, TRUE) // 科学スコア
この例では、A1からA10に学生ID(1から順に)、B1からD10にランダムなテストスコア例(0から100の範囲の整数)が生成されます。