今回は、Numpyで乱数を取得する方法を学びます。
randamモジュールを利用することで、様々な乱数を取得することができます。
では、早速試してきます。
0. まずは、お約束のnumpyライブラリをimport。
「import numpy as np」とすることで、「np」にて参照して、各種関数や定数を呼び出すことができます。
1. np.random.rand()で、一様分布から実数の乱数を取得する。
np.random.rand()に引数を渡さない場合は、0以上、1未満の一様分布からの実数値の乱数を一つ取得できます。
np.random.rand()の引数に取得したい個数を指定することで、一様分布からの指定した個数の乱数がarrayで取得できます。
np.random.rand()の引数に行列のサイズを渡すことで、一様分布から指定したサイズの乱数がarrayで取得できます。
2. np.random.randint()で、一様分布から整数の乱数を取得する。
np.random.randint()の引数に取得したい乱数の範囲を指定することで、一様分布からの乱数を取得できます。
2つ目の引数の数字は含まれないことに注意が必要です。
np.random.randint()の引数の三つ目に取得したい乱数の個数を指定することで、指定した個数の整数の乱数がarrayで取得できます。
3. np.random.normal()で、正規分布からの実数の乱数を取得する。
np.random.normal()の引数に、loc=(平均)、scale=(標準偏差)、size=(個数)を指定することで、指定した平均、標準偏差の正規分布からの実数の乱数を指定した個数arrayで取得できます。
sizeに行列のサイズを指定することで、指定したサイズで正規分布からの乱数を取得することができます。
パラメータ名を省略しても取得可能です。
4. matplotlib.pyplotオブジェクトのhist()メソッドで取得した乱数をヒストグラム化する。
matplotlib.pyplotオブジェクトのhist()メソッドに取得した乱数(array)と、bins=階級数(棒の数)を引数に渡すことで、ヒストグラムで表示できます。(今回の場合、平均0、標準偏差3の正規分布の形状になります。)arrayオブジェクトは、reshape()メソッドにサイズを指定することで行列のサイズを変更することができます。
今回は、一様分布と正規分布からの乱数の取得ができるようになりました。
乱数が取得できることは基礎の基礎なので、これをどう活用して行くかは、これから徐々に学んで行きたいと思います。
では、引き続き、頑張って勉強していきたいと思います。
2019年3月9日(土)にG検定を受験し、見事合格できました!
受験の体験記や勉強法などを別のブログにまとめました。
これから受験される方がいらっしゃいましたらご参考まで。