我正在测试一个具有随机输入的算法:作为参考,输入是一系列浮点数与一些0和1(有相对较少的1)压缩在一起。
最后,1s的概率和位置都是随机的。然而,事实证明这很难调试。
概率目前根据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)
我意识到这可能是天真的,但我老老实实不知道如何生成随机数。每次运行测试时,如何使这些概率相同?
答案 0 :(得分:3)
致电
numpy.random.seed(x)
其中x
是常量,每次运行程序时都会有相同的随机样本。
答案 1 :(得分:3)
您可以“播种”随机数生成器,使其在每次运行时生成相同的数字。
numpy.random.seed(123) # change the seed for different tests