Pythonにおける復元抽出と非復元抽出の方法
コード
Pythonで復元・非復元抽出をする方法はnumpy
の関数np.random.choice()
を使えばいい。
random.choice(a, size=None, replace=True, p=None)
- a: 一次元配列か整数
- 抽出を行う集合を意味する。aが整数の場合、
np.arange(a)
から抽出される。
- 抽出を行う集合を意味する。aが整数の場合、
- size: 整数または整数のタプル
- 抽出された出力のサイズを意味する。
- replace: ブーリアン
- Tは復元抽出、Fは非復元抽出を意味する。
- p: 一次元配列
- 各要素が選ばれる確率を意味する。デフォルトは
None
だ。
- 各要素が選ばれる確率を意味する。デフォルトは
(23.10.04)PyTorchでは簡単にやる方法がない。
>>> np.random.choice(5, 5, replace=False)
array([3, 1, 0, 2, 4])
>>> np.random.choice(5, 5, replace=True)
array([0, 2, 0, 2, 2])
環境
- OS: Windows11
- Version: Python 3.11.5, numpy==1.26.0