Main Content

乱数発生

Statistics and Machine Learning Toolbox™ では、さまざまな分布からの乱数の発生がサポートされています。各乱数発生器 (RNG) は分布のパラメーター族を表します。乱数発生器は、指定した分布からの乱数を、指定した大きさの配列に返します。

特定の分布をサポートしない他の乱数発生関数には以下のようなものがあります。

Statistics and Machine Learning Toolbox ソフトウェアの乱数発生器は、関数のrandrandnを介した MATLAB®の既定の設定の乱数ストリームにより異なります。各乱数発生器は、一般的な疑似乱数発生法で説明した手法のいずれかを使用して、与えられた分布から乱数を生成します。

既定の設定の乱数ストリームとその状態を制御することにより、Statistics and Machine Learning Toolbox ソフトウェアの乱数発生器がランダムな値を生成する方法を制御することができます。たとえば、既定の設定のストリームの状態を保存/復元して、乱数発生器からの同じ連続の値を再生することも、既定の設定のストリームをリセットすることもできます。既定の設定の乱数ストリームを管理する方法の詳細は、RandStream を使用したグローバル ストリームの管理を参照してください。

MATLAB は、起動されるたびに、既定乱数ストリームを同じ状態に初期化します。そのため、Statistics and Machine Learning Toolbox ソフトウェアの乱数発生器は、起動時にその状態を変更しない限り、MATLAB のセッションごとに同じ連続の値を生成します。それを行う簡単な方法の 1 つは、以下のようなコマンドをstartup.mに追加することです。

rngshuffle

これはセッションごとに既定の設定の乱数ストリームを異なる状態に初期化します。

次の表は、サポートされる分布とそのそれぞれの乱数発生関数のリストです。

分布 乱数発生関数
ベータ betarnd,random,randtool
二項 binornd,random,randtool
バーンバウム・サンダース random
第十二ブール型 random,randtool
カイ二乗 chi2rnd,random,randtool
クレイトン コピュラ copularnd
指数 exprnd,random,randtool
極値 evrnd,random,randtool
F frnd,random,randtool
フランク・コピュラ copularnd
ガンマ gamrnd,randg,random,randtool
ガウス型コピュラ copularnd
混合ガウス random
一般化極値 gevrnd,random,randtool
一般化パレート gprnd,random,randtool
幾何 geornd,random,randtool
ガンベル・コピュラ copularnd
半正規 random,randtool
超幾何 hygernd,random,randtool
逆ガウス random
逆ウィシャート iwishrnd
ジョンソン システム johnsrnd
カーネル random
ロジスティック random
対数ロジスティック random
対数正規 lognrnd,random,randtool
多項 mnrnd
多変量正規 mvnrnd
多変量t mvtrnd
仲上 random
負の二項 nbinrnd,random,randtool
非心カイ二乗 ncx2rnd,random,randtool
非心F ncfrnd,random,randtool
非心t nctrnd,random,randtool
正規 (ガウス) normrnd,randn,random,randtool
パレート random
ピアソン システム pearsrnd
区分的 random
ポアソン poissrnd,random,randtool
レイリー raylrnd,random,randtool
ライス random
安定 random
スチューデントのt trnd,random,randtool
tコピュラ copularnd
t位置 - スケール random
三角形 random
一様 (連続) unifrnd,rand,random
一様 (離散) unidrnd,random,randtool
ワイブル wblrnd,random
ウィシャート wishrnd

関連するトピック