numpy.random.RandomState.set_state#
方法
- random.RandomState.set_state(state)#
從元組設定生成器的內部狀態。
適用於需要手動(重新)設定 RandomState 實例所使用的位元生成器內部狀態的情況。預設情況下,RandomState 使用「梅森旋轉演算法」[1] 虛擬隨機數生成演算法。
- 參數:
- state{tuple(str, 624 個 uint 的 ndarray, int, int, float), dict}
state 元組包含以下項目
字串 ‘MT19937’,指定梅森旋轉演算法。
624 個無號整數
keys
的 1 維陣列。整數
pos
。整數
has_gauss
。浮點數
cached_gaussian
。
如果 state 是一個字典,則會使用 BitGenerators 的 state 屬性直接設定。
- 回傳值:
- outNone
成功時回傳 ‘None’。
另請參閱
說明
set_state
和get_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.