随机数生成器 (scipy.stats.sampling)#

此模块包含一个随机数生成器集合,用于从单变量连续和离散分布中采样。它使用名为 “UNU.RAN” 的 C 库的实现。唯一的例外是 RatioUniforms,它是均匀比率方法的纯 Python 实现。

封装的生成器#

用于连续分布#

NumericalInverseHermite(dist, *[, domain, ...])

基于 Hermite 插值的 CDF 逆变换 (HINV)。

NumericalInversePolynomial(dist, *[, mode, ...])

基于多项式插值的 CDF 逆变换 (PINV)。

TransformedDensityRejection(dist, *[, mode, ...])

变换密度拒绝 (TDR) 方法。

SimpleRatioUniforms(dist, *[, mode, ...])

简单均匀比率 (SROU) 方法。

RatioUniforms(pdf, *, umax, vmin, vmax[, c, ...])

使用均匀比率方法从概率密度函数生成随机样本。

用于离散分布#

DiscreteAliasUrn(dist, *[, domain, ...])

离散别名瓮方法。

DiscreteGuideTable(dist, *[, domain, ...])

离散引导表方法。

scipy.stats.sampling 中使用的警告/错误#

UNURANError

当 UNU.RAN 库中发生错误时引发。

预定义分布的生成器#

为了方便地将上述方法应用于 scipy.stats 中的某些连续分布,可以使用以下功能

FastGeneratorInversion(dist, *[, domain, ...])

通过数值反演 CDF 对 scipy.stats 中大量连续分布进行快速采样。