scipy.stats.sampling.FastGeneratorInversion.

qrvs#

FastGeneratorInversion.qrvs(size=None, d=None, qmc_engine=None)[源代码][源代码]#

给定分布的拟随机变量。

qmc_engine 用于生成均匀的准随机变量,这些变量通过逆变换采样转换为给定分布的准随机变量。

参数:
大小int, int 的元组, 或 None; 可选

定义随机变量数组的形状。默认值为 None

dint 或 None, 可选

定义要转换的均匀准随机变量的维度。默认为 None

qmc_enginescipy.stats.qmc.QMCEngine(d=1), 可选

定义用于绘制准随机变量的对象。默认值为 None,使用 scipy.stats.qmc.Halton(1)

返回:
rvsndarray 或标量

准随机变量。形状信息请参见注释。

注释

输出数组的形状取决于 sizedqmc_engine。目的是使接口自然,但实现这一目标的详细规则是复杂的。

  • 如果 qmc_engineNone,则会创建一个维度为 dscipy.stats.qmc.Halton 实例。如果未提供 d,则 d=1

  • 如果 qmc_engine 不是 NonedNone,则 dqmc_engine 的维度决定。

  • 如果 qmc_engine 不是 Noned 不是 None 但维度不一致,则会引发 ValueError

  • 根据上述规则确定 d 后,输出形状为 tuple_shape + d_shape,其中:

    • tuple_shape = tuple() 如果 sizeNone

    • tuple_shape = (size,) 如果 size 是一个 int

    • tuple_shape = size 如果 size 是一个序列,

    • d_shape = tuple() 如果 dNone 或者 d 是 1,并且

    • d_shape = (d,) 如果 d 大于 1。

返回数组的元素是低差异序列的一部分。如果 d 是 1,这意味着没有任何样本是真正独立的。如果 d > 1,每个切片 rvs[..., i] 将是一个准独立序列;详见 scipy.stats.qmc.QMCEngine。请注意,当 d > 1 时,返回的样本仍然是所提供的一元分布的样本,而不是该分布的多变量泛化。