np.random.choiceとは
np.random.choice
は、NumPyライブラリの一部であり、指定された配列やリストからランダムに要素を選択するために使用される関数です。
np.random.choiceの使用例
ランダムなサンプリング
与えられた配列からランダムに要素を選択する場合、np.random.choice
を使用できます。
例えば、1から10までの整数の中からランダムに3つの要素を選びたい場合
import numpy as np
numbers = np.arange(1, 11) # 1から10までの整数の配列
random_selection = np.random.choice(numbers, size=3, replace=False)
print(random_selection)
出力例
[5 3 9]
- パラメータ
size
パラメータは、選択する要素の数を指定します。replace=False
は、重複のないサンプリングを行うことを示しています。デフォルトでは、replace=Trueであり、重複が許されます。
確率分布に基づくサンプリング
要素の選択確率を与える重みを持つ場合、np.random.choice
を使用して確率分布に基づくサンプリングを行うことができます。重みはp
パラメータを通じて指定されます。以下は、要素を選択する確率が異なる場合の例
import numpy as np
items = ['A', 'B', 'C', 'D']
probabilities = [0.1, 0.3, 0.4, 0.2]
random_selection = np.random.choice(items, size=2, p=probabilities)
print(random_selection)
出力例
['C' 'D']
p
パラメータは、各要素の選択確率を指定するリストや配列として与えられます。