まくまくOctaveノート
ランダムな数値で行列を作成する (rand)
2017-03-24

0~1のランダムな実数を生成する

組み込み関数の rand を使用すると、 の範囲のランダムな実数を生成することができます。

>> x = rand()
x =  0.68694

パラメータとして、行列のサイズを指定することで、ランダムな数値からなる行列を生成することができます。

>> rand(3)
ans =

   0.21961   0.93511   0.42575
   0.40439   0.57059   0.47850
   0.33873   0.52912   0.58643

>> rand(2, 4)
ans =

   0.710878   0.077407   0.991165   0.606275
   0.807493   0.428040   0.497468   0.606412

任意の範囲のランダム値を生成する

任意の数値の範囲のランダム値を生成するには、下記のような演算を行えば OK です。

0 ~ 10 の範囲のランダム値を生成

>> rand * 10
ans =  8.0312

-5 ~ 5 の範囲のランダム値を生成

>> rand * 10 - 5
ans = -4.6596

整数値にしたいときは、floor 関数を使って小数部分を切り捨てます。

0 ~ 9 のランダムな整数を生成

>> floor(rand * 10)
ans = 7

行列の要素にも適用できます。

0 ~ 9 のランダムな整数からなる行列を生成

>> floor(rand(3) * 10)
ans =

   0   6   4
   7   9   2
   3   4   4
2017-03-24