因此,给定一个numpy数组,例如:np.array([9, 4, 50, 6, 7, 19, 30])我想写一个函数,随机选择数组中一个元素的索引。但是,我希望具有较大值的索引(例如索引2和6)具有较大的概率被选择。我考虑过使用Numpy。random.choice,但是我不知道如何预定义权重。numpy.random。选择函数必须给出数组中每个条目的概率列表,并且它的总和应该是1。但我真的很难理解如何计算我的问题的概率。有人有小费吗?我真的很感激你的帮助
np.array([9, 4, 50, 6, 7, 19, 30])
cigdeys31#
试试这个:
import numpy as np a = np.array([9, 4, 50, 6, 7, 19, 30]) weights = a/sum(a) print(sum(weights)) # 1.0 np.random.choice(a,p=weights)
1条答案
按热度按时间cigdeys31#
试试这个: