numpy.random.RandomState.set_state#

方法

random.RandomState.set_state(state)#

從元組設定生成器的內部狀態。

適用於需要手動(重新)設定 RandomState 實例所使用的位元生成器內部狀態的情況。預設情況下,RandomState 使用「梅森旋轉演算法」[1] 虛擬隨機數生成演算法。

參數:
state{tuple(str, 624 個 uint 的 ndarray, int, int, float), dict}

state 元組包含以下項目

  1. 字串 ‘MT19937’,指定梅森旋轉演算法。

  2. 624 個無號整數 keys 的 1 維陣列。

  3. 整數 pos

  4. 整數 has_gauss

  5. 浮點數 cached_gaussian

如果 state 是一個字典,則會使用 BitGenerators 的 state 屬性直接設定。

回傳值:
outNone

成功時回傳 ‘None’。

另請參閱

get_state

說明

set_stateget_state 並非使用 NumPy 中任何隨機分佈的必要條件。如果手動更改內部狀態,使用者應確切知道自己在做什麼。

為了向後相容,也接受 (str, 624 個 uint 的陣列, int) 形式,但它缺少有關快取高斯值的一些資訊:state = ('MT19937', keys, pos)

參考文獻

[1]

M. Matsumoto and T. Nishimura, “Mersenne Twister: A 623-dimensionally equidistributed uniform pseudorandom number generator,” ACM Trans. on Modeling and Computer Simulation, Vol. 8, No. 1, pp. 3-30, Jan. 1998.