PythonのNumPyライブラリは、科学技術計算に必要なさまざまな数学関数を提供しています。その中でも、乱数生成に関する関数はよく使用されます。本記事では、NumPyを使って様々な乱数生成方法を紹介します。
単純な乱数の生成
NumPyのrandomモジュールには、一様分布、正規分布、ガンマ分布、指数分布など、さまざまな分布から乱数を生成するための関数があります。以下に、一様分布から乱数を生成する例を示します。
import numpy as np
# 0から1の範囲で一様分布に従う乱数を10個生成
rand_array = np.random.rand(10)
print(rand_array)
種(seed)を指定する方法
乱数生成において、生成される乱数列は種(seed)によって決定されます。同じ種を指定すると、同じ乱数列が生成されます。以下に、種を指定して乱数を生成する例を示します。
import numpy as np
# 種を指定して乱数を生成
np.random.seed(0)
rand_array_1 = np.random.rand(5)
np.random.seed(0)
rand_array_2 = np.random.rand(5)
print(rand_array_1)
print(rand_array_2)
パラメータを指定する方法
NumPyの乱数生成関数には、パラメータを指定することができます。例えば、正規分布の平均値と標準偏差を指定して乱数を生成することができます。以下に、平均値が0、標準偏差が1の正規分布から乱数を生成する例を示します。
import numpy as np
# 平均値が0、標準偏差が1の正規分布に従う乱数を10個生成
rand_array = np.random.normal(loc=0, scale=1, size=10)
print(rand_array)
まとめ
本記事では、NumPyを使って乱数を生成する方法について紹介しました。種を指定することで、同じ乱数列を生成することができます。また、パラメータを指定することで、さまざまな分布から乱数を生成することができます。