在每次测试运行中生成相同的概率分布

时间:2013-11-26 14:30:57

标签: python random

我正在测试一个具有随机输入的算法:作为参考,输入是一系列浮点数与一些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)

我意识到这可能是天真的,但我老老实实不知道如何生成随机数。每次运行测试时,如何使这些概率相同?

2 个答案:

答案 0 :(得分:3)

致电

numpy.random.seed(x)

其中x是常量,每次运行程序时都会有相同的随机样本。

答案 1 :(得分:3)

您可以“播种”随机数生成器,使其在每次运行时生成相同的数字。

numpy.random.seed(123) # change the seed for different tests