Python で runif() と同等のものを使用する方法
R プログラミング言語では、 runif()関数を使用して、特定の最小値と最大値を持つ一様分布に従うランダム値のベクトルを生成できます。
たとえば、次のコードは、 runif()を使用して、最小値 5、最大値 10 の一様分布に従う 8 つのランダム値のベクトルを作成する方法を示しています。
#make this example reproducible set. seeds (1) #generate vector of 8 values that follow uniform distribution with min=5 and max=10 runif(n=8, min=5, max=10) [1] 6.327543 6.860619 7.864267 9.541039 6.008410 9.491948 9.723376 8.303989
Python のrunif()関数に相当するのはnp.random.uniform()関数で、次の基本構文を使用します。
np.random.uniform(低=0、高=1、サイズ=なし)
金:
- low : 分布の最小値
- high : 分布の最大値
- サイズ:サンプルサイズ
次の例は、この関数を実際に使用する方法を示しています。
例: Python の runif() に相当するものを使用する
次のコードは、 np.random.uniform()関数を使用して、特定の最小値と最大値を持つ一様分布に従うランダム値の配列を生成する方法を示しています。
import numpy as np #make this example reproducible n.p. random . seeds (1) #generate array of 8 values that follow uniform distribution with min=5 and max=10 n.p. random . uniform (low= 5 , high= 10 , size= 8 ) array([7.08511002, 8.60162247, 5.00057187, 6.51166286, 5.73377945, 5.46169297, 5.93130106, 6.72780364])
結果は、最小値 5、最大値 10 の一様分布から生成された 8 つの値を含む NumPy 配列になります。
Matplotlib を使用してヒストグラムを作成し、 np.random.uniform()関数によって生成された正規分布を視覚化することもできます。
import numpy as np import matplotlib. pyplot as plt #make this example reproducible n.p. random . seeds (1) #generate array of 200 values that follow uniform distribution with min=5 and max=10 data = np. random . uniform (low= 5 , high= 10 , size= 200 ) #create histogram to visualize distribution of values plt. hist (data, bins= 30 , edgecolor=' black ')
X 軸は分布の値を示し、Y 軸は各値の頻度を示します。
これらは分布に指定した最小値と最大値であるため、X 軸は 5 から 10 まで変化することに注意してください。
注: np.random.uniform()関数の完全なドキュメントはここで見つけることができます。
追加リソース
次のチュートリアルでは、パンダで他の一般的な操作を実行する方法を説明します。
ランダムなデータを使用して Pandas DataFrame を作成する方法
Pandas で行をランダムにサンプリングする方法
Pandas DataFrame で行をシャッフルする方法