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

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

包装的生成器#

对于连续分布#

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

基于埃尔米特插值的 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, ...])

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