python - 如何播种 scipy.stats.norm.rvs 并让它使用 PCG64 BitGenerator?
问题描述
这个答案提供了一个简短的介绍scipy.stats.norm.rv
。
为了播种这个函数,我做了以下事情并得到了以下结果。
>>> norm.rvs(size=10, random_state=12345)
array([-0.20470766, 0.47894334, -0.51943872, -0.5557303 , 1.96578057,
1.39340583, 0.09290788, 0.28174615, 0.76902257, 1.24643474]
问题:
对于 NumPy v1.19,这个函数是使用 NumPy 的
SeedSequence
还是传统的播种算法来播种生成器?如果是前者,我如何将其传递child_seeds
给SeedSequence
它?如何
scipy.stats.norm.rv
使用numpy.random.default_rng()
BitGenerator (PCG64) 而不是 MT19937 BitGenerator。根据NumPy 的文档,我知道这RandomState
是指 NumPy 的 Legacy Random Generation,即 MT19937 BitGenerator。我做了以下事情并得到了一个例外:>>> from scipy.stats import norm >>> from numpy.random import default_rng >>> rg = default_rng( 12345 ) >>> norm.rvs(size=10, random_state=rg) ValueError: Generator(PCG64) at 0x7F19E528D228 cannot be used to seed a numpy.random.RandomState instance
解决方案
推荐阅读
- javafx - Javafx - 为条形图设置悬停
- javascript - 我无法在 javascript 中访问 radgrid 列..我如何访问这个..?
- javascript - 当我们使用 css 下拉菜单作为共享组件时如何设置和获取表单值
- python - numpy sum min max 函数在聚合或应用于列表或数组时的不同行为
- uri - 当模式导入中的反斜杠和指定的绑定时,XJC 失败
- azure-devops - 如何触发 PR 构建?
- python - 如何可靠地从 TCP 套接字中准确读取 n 个字节?
- flex-lexer - 如何将 flex 令牌与另一个令牌重新协调?
- windows - Docker for windows 10 的静默安装命令是什么?
- html - 与内容宽度相关的 Flex 表头