やったこと
numpy.random.choice を使ってみます。
確認環境
$ python
Python 3.6.2 |Anaconda custom (64-bit)| (default, Sep 21 2017, 18:29:43)
[GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> np.__version__
'1.16.4'
調査
0以上5未満の数字を3個選びます。
>>> import numpy as np
>>> np.random.choice(5, 3)
array([2, 0, 4])
>>> np.random.choice(5, 3)
array([4, 4, 4])
>>> np.random.choice(5, 3)
array([1, 1, 2])
>>> np.random.choice(5, 3)
array([0, 2, 0])
また、確率も指定できます。
>>> np.random.choice(5, 3, p=[0.1, 0.1, 0, 0, 0.8])
array([4, 4, 4])
>>> np.random.choice(5, 3, p=[0.1, 0.1, 0, 0, 0.8])
array([1, 4, 4])
>>> np.random.choice(5, 3, p=[0.1, 0.1, 0, 0, 0.8])
array([4, 4, 4])
>>> np.random.choice(5, 3, p=[0.1, 0.1, 0, 0, 0.8])
array([4, 4, 0])
実行する度に、変わっていることが分かります。