这个问题已经有了答案:
Consistently create same random numpy array
5个答案
我正在测试一个算法,它有随机输入:作为参考,输入是一个由一些0和1压缩在一起的浮点数序列(1相对较少)。
最后,1的概率和位置都是随机的。但事实证明这很难调试。
概率目前是根据Dirichlet分布进行分布的:
import numpy.random as ran
N=1024
num_ones = 10
probs = ran.dirichlet([1]*N)
probs = num_ones*probs
probs = probs
probs = sorted(probs, reverse=True)
我知道这可能很幼稚,但我真的不知道随机数是如何产生的。我如何使这些概率在每次运行测试时相同?
最佳答案
呼叫
numpy.random.seed(x)
其中
x
是常量,每次运行程序时都会有相同的随机样本。