Python 从numpy中选择元素

Python 从numpy中选择元素,python,numpy,Python,Numpy,代码= a=np.array(['Phone','Laptop','Phone','Pi_Board','Pi_Board','Laptop','Phone']) 在numpy数组a中,有一些元素定期重复 np.random.choice() 如何通过提供概率值从a中选择随机元素,比如 'Phone'-0.7概率 'Laptop'-0.2概率 'Pi_Board'-0.1概率 感谢使用您可以使用numpy.random.choice(列表(集合(a)),1[0.7,0.2,0.1]) 如果您想从

代码=

a=np.array(['Phone','Laptop','Phone','Pi_Board','Pi_Board','Laptop','Phone'])

在numpy数组
a
中,有一些元素定期重复

np.random.choice()

如何通过提供概率值从
a
中选择随机元素,比如

'Phone'-0.7概率

'Laptop'-0.2概率

'Pi_Board'-0.1概率

感谢使用您可以使用
numpy.random.choice(列表(集合(a)),1[0.7,0.2,0.1])

如果您想从
a
中得出概率,可以使用:


您只需使用元素创建另一个数组,并使用
sample
import numpy, collections

a = numpy.array(['Phone', 'Laptop', 'Phone', 'Pi_Board', 'Pi_Board', 'Laptop', 'Phone'])

counter = collections.Counter(a)

print(numpy.random.choice(list(set(a)), 1, [counter[c]/len(a) for c in set(a)]))