Python 如何使用random.RandomState

Python 如何使用random.RandomState,python,numpy,random,random-seed,Python,Numpy,Random,Random Seed,我希望我的脚本在每次运行脚本时创建相同的数字数组。之前我使用的是np.random.seed()。例如: np.random.seed(1) X = np.random.random((3,2)) 我读过,应该使用RandomState而不是np.random.seed()。但我不知道如何使用它,尝试了一些组合,但都不起作用 确实,确保从特定(非全局)流中获取熵有时是有利的。基本上,您所要做的就是创建一个RandomState对象,然后使用它的方法,而不是使用numpy的随机函数。例如,代替

我希望我的脚本在每次运行脚本时创建相同的数字数组。之前我使用的是np.random.seed()。例如:

np.random.seed(1)
X = np.random.random((3,2))

我读过,应该使用RandomState而不是np.random.seed()。但我不知道如何使用它,尝试了一些组合,但都不起作用

确实,确保从特定(非全局)流中获取熵有时是有利的。基本上,您所要做的就是创建一个RandomState对象,然后使用它的方法,而不是使用numpy的随机函数。例如,代替

>>> np.random.seed(3)
>>> np.random.rand()
0.5507979025745755
>>> np.random.randint(10**3, 10**4)
7400
你可以写

>>> R = np.random.RandomState(3)
>>> R
<mtrand.RandomState object at 0x7f79b3315f28>
>>> R.rand()
0.5507979025745755
>>> R.randint(10**3, 10**4)
7400
R=np.random.RandomState(3) >>>R >>>R.兰德() 0.5507979025745755 >>>R.randint(10**3,10**4) 7400
所以你所需要做的就是做
R
,然后用
R.
代替
np.random.
——非常简单。您可以根据需要传递R,并且有多个随机流(如果您希望某个进程相同,而另一个进程更改,等等)

…那么您从哪里读到的呢?中的
np.random.seed有什么问题。看看第二个答案,也看看你尝试了什么?你得到了什么输出让你觉得它不起作用?@RobertKern类似于:np.random.RandomState(1)np.random.random((3,2))我只是想知道如何使用这个RandomState,我对编程、Python,尤其是NumPyGreat还是新手,这就是我一直在寻找的。我曾尝试以与random.seed相同的方式使用RandomState,将RandomState与numpy函数相结合,但这是错误的。现在我知道怎么处理了。非常感谢。如果我使用
R
而不传递任何种子,会发生什么?这和总是使用随机种子是一样的吗?