【发布时间】:2019-12-15 19:50:55
【问题描述】:
对不起,如果已经有这个问题,但我没有找到它。 那么是否有从列表中选择一些东西的功能,但是百分比就像我们有一个带有苏打水,汤和水瓶的列表,所以程序必须选择其中之一,但它会选择汤的机会是 2% 苏打水是 30%,水瓶是 68%?
【问题讨论】:
标签: python
对不起,如果已经有这个问题,但我没有找到它。 那么是否有从列表中选择一些东西的功能,但是百分比就像我们有一个带有苏打水,汤和水瓶的列表,所以程序必须选择其中之一,但它会选择汤的机会是 2% 苏打水是 30%,水瓶是 68%?
【问题讨论】:
标签: python
您想以指定的概率从列表中随机选择一个元素。你可以使用 numpy 的 random.choice 函数来做到这一点:
options = ['soup', 'soda', 'water']
probs = [0.02, 0.3, 0.68]
np.random.choice(options, p=probs)
在这个例子中,np.random.choice 是从一个列表(选项)中随机选择一些指定的概率(probs)。有关更多信息,您可以在此处查看 numpy 文档:numpy.random.choice。
【讨论】:
您可以使用随机数生成器来获取从 0 到 1 的随机浮点数。如果该数字是 0 到 0.3 的一部分,那么您就是列表中的第一项。如果数字是 0.3 到 0.97 的一部分,则选择第二项。否则选择最后一项。
【讨论】: