| MATLAB Function Reference | ![]() |
表示
Y = rand(n)
Y = rand(m,n)
Y = rand([m n])
Y = rand(m,n,p,...)
Y = rand([m n p...])
Y = rand(size(A))
rand
s = rand('state')
詳細
関数 rand は、区間(0, 1) 内で一様分布する乱数の配列を作ります。
Y = rand(n)
は、乱数を要素とする n行n列の行列を出力します。n がスカラでない場合は、エラーメッセージが表示されます。
Y = rand(m,n) 、または、Y
= rand([m n]) は、乱数を要素とする m行n列の行列を出力します。
Y = rand(m,n,p,...) 、または、Y = rand([m n p...]) は、乱数を要素とする配列を作ります。
Y = rand(size(A))
は、乱数を要素とする A と同じサイズの配列を出力します。
s = rand('state')
は、一様分布乱数発生器の現在の状態を含む、35 要素をもつベクトルを出力します。一様分布乱数発生器の状態を変更するためには、つぎの表のようにします。
rand('state',s) |
状態を s にリセットします。 |
rand('state',0) |
発生器を初期状態にリセットします。 |
rand('state',j) |
整数 j に対して、発生器を j 番目の状態にリセットします。 |
rand('state',sum(100*clock)) |
実行毎に異なる状態にリセットします。 |
注意
MATLAB 5 は、閉区間
内のすべての浮動小数点数を生成することができる、新しいマルチシードの乱数発生器を使います。理論的には、同じ値を繰り返す前に、
以上の値を生成することができます。MATLAB 4 は、シングルシードの乱数発生器を使っていました。rand('seed',0 ) と rand('seed',j) は、MATLAB 4 の発生器を使います。rand('seed') は、MATLAB 4 の一様乱数発生器の現在のシードを出力します。rand('state',j) と rand('state',s) は、MATLAB 5 の発生器を使います。
例題
R =
0.2190 0.6793 0.5194 0.0535
0.0470 0.9347 0.8310 0.5297
0.6789 0.3835 0.0346 0.6711
つぎの条件文により、2 つの事象の間で同じ確率でランダムな選択が行われます。
if rand < .5
'heads'
else
'tails'
end
参考
randn, randperm, sprand, sprandn
| qz | randn | ![]() |