メインコンテンツまでスキップ

NTRANDNORM

標準正規分布に従う疑似乱数を返します。乱数は超長周期 (21993712^{19937}-1)、 かつ高次元均等性(623次元)を備えたMersenne Twister アルゴリズム を基に生成されます。

書式

NTRANDNORM(
Size,
Algorithm,
Random seed1,
Random seed2,
Use invert func,
Use antithetic,
Use resampling
)

引数

  • Size乱数の個数を指定します(正の整数)。
  • Algorithm 一様乱数を生成するアルゴリズムを下記の3つから選択します。この引数は省略することができます。
    • 0: Mersenne Twister(2002)
    • 1: Mersenne Twister(1998)
    • 2: Numerical Recipes ran2()
  • Random seed1 第1乱数シードを指定します。この引数は省略することが出来ます。
  • Random seed2 第2乱数シードを指定します。この引数は省略することが出来ます。
  • Use invert func 乱数生成法を論理値で指定します。Use invert func に TRUE を指定すると逆関数法が用いられ、FALSE を指定すると極座標法(Box-Muller 法)が用いられます。
  • Use antithetic 対称変量法を用いるか否かを論理値で指定します。Use antithetic に TRUE を指定すると対称変量法が用いられ,FALSEを指定すると用いられません。
  • Use resampling 2次サンプリングを用いるか否かを論理値で指定します。Use resampling に TRUE を指定すると2次サンプリングが用いられ,FALSEを指定すると用いられません。

解説

  • 逆関数法を用いる場合、累積分布関数の逆関数はMoro の方法を用いて近似しています。
  • 平均 mm、標準偏差 ss の正規乱数を生成するには次式を入力します:
  =s*NTRANDNORM(100)+m

使用例

  • 使用例を新規のワークシートにコピーすると、計算結果を確認できます。
その方法は?
  1. 新しいブックまたはワークシートを作成します。

  2. ヘルプ トピックにある使用例を選択します(行番号および列番号を除く)。

    Selecting an example from Help

    ヘルプから使用例を選択する

  3. Ctrl キーを押しながら C キーを押します。

  4. ワークシートのセル A1 を選択し、Ctrl キーを押しながら V キーを押します。

  5. 計算結果と結果を返す数式の表示を切り替えるには、Ctrl キーを押しながら ` (アクサン グラーブ) キーを押すか、または [ツール] メニューの [ワークシート分析] をポイントし、[ワークシート分析モード] をクリックします。

AB
1データ説明
2=NTRANDNORM(100,0,12345,67890)100個の標準正規乱数を Mersenne Twister アルゴリズムで生成します。

メモ: この使用例の数式は、配列数式として入力する必要があります。使用例を新規ワークシートにコピーした後、A2:A101 のセル範囲 (配列数式が入力されているセルが左上になる) を選択します。F2 キーを押し、Ctrl キーと Shift キーを押しながら Enter キーを押します。この数式が配列数式として入力されていない場合、単一の値 2 のみが計算結果として返されます。

参照