从数组中选择随机样本

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')
'''