從陣列中選擇隨機樣本

letters = list('abcde')

隨機選擇三個字母( 有替換 - 可以多次選擇相同的專案):

np.random.choice(letters, 3)
''' 
Out: array(['e', 'e', 'd'], 
      dtype='<U1')
'''

無需更換的抽樣:

np.random.choice(letters, 3, replace=False)
''' 
Out: array(['a', 'c', 'd'], 
      dtype='<U1')
'''

為每個字母分配概率:

# Choses 'a' with 40% chance, 'b' with 30% and the remaining ones with 10% each
np.random.choice(letters, size=10, p=[0.4, 0.3, 0.1, 0.1, 0.1])

'''
Out: array(['a', 'b', 'e', 'b', 'a', 'b', 'b', 'c', 'a', 'b'],
  dtype='<U1')
'''