numpy.random.RandomState.set_state#

方法

random.RandomState.set_state(state)#

从元组设置生成器的内部状态。

如果需要手动(重新)设置 RandomState 实例使用的位生成器的内部状态,则可以使用此方法。默认情况下,RandomState 使用 “Mersenne Twister”[1] 伪随机数生成算法。

参数
state{tuple(str, 624 个 uint 的 ndarray, int, int, float), dict}

state 元组包含以下项

  1. 字符串 “MT19937”,指定梅森旋转算法。

  2. 一个 624 个无符号整数的 1-D 数组 keys

  3. 一个整数 pos

  4. 一个整数 has_gauss

  5. 一个浮点数 cached_gaussian

如果 state 是一个字典,它将直接使用 BitGenerators 的 state 属性进行设置。

返回
outNone

成功时返回 ‘None’。

另请参阅

get_state

说明

在 NumPy 中,使用任何随机分布都不需要 set_stateget_state。如果手动更改了内部状态,则用户应该确切地知道自己在做什么。

为了向后兼容,也接受 (str, 624 个 uint 的数组, int) 的形式,尽管它缺少关于缓存高斯值的一些信息:state = ('MT19937', keys, pos)

参考

[1]

M. Matsumoto 和 T. Nishimura,“梅森旋转:一个 623 维等分布均匀伪随机数生成器”,ACM Trans. on Modeling and Computer Simulation,第 8 卷,第 1 期,第 3-30 页,1998 年 1 月。