如何生成对一个数字具有指定偏差的随机数。例如,我将如何在 1 和 2 这两个数字之间进行选择,并且 90% 的概率偏向 1。我能想到的最好的办法是……
import random
print random.choice([1, 1, 1, 1, 1, 1, 1, 1, 1, 2])
有一个更好的方法吗?我展示的方法适用于简单的示例,但最终我将不得不使用非常具体的偏差(例如 37.65% 偏差)进行更复杂的选择,这将需要一个很长的列表。
编辑:
我应该补充一点,我被困在 numpy 1.6 上,所以我不能使用 numpy.random.choice。
np.random.choice http://docs.scipy.org/doc/numpy-dev/reference/generated/numpy.random.choice.html has a p
您可以使用该参数来指定选择的概率:
np.random.choice([1,2], p=[0.9, 0.1])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)