当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy Generator.standard_gamma用法及代码示例


本文简要介绍 python 语言中 numpy.random.Generator.standard_gamma 的用法。

用法:

random.Generator.standard_gamma(shape, size=None, dtype=np.float64, out=None)

从标准 Gamma 分布中抽取样本。

样本是从具有指定参数、形状(有时指定为“k”)和比例=1 的 Gamma 分布中提取的。

参数

shape 浮点数或类似数组的浮点数

参数,必须为非负数。

size int 或整数元组,可选

输出形状。例如,如果给定的形状是 (m, n, k) ,则绘制 m * n * k 样本。如果 size 为 None(默认),如果 shape 是标量,则返回单个值。否则,将抽取np.array(shape).size 样本。

dtype dtype,可选

结果的所需dtype,仅支持 float64 float32 。字节序必须是原生的。默认值为 np.float64。

out ndarray,可选

用于放置结果的替代输出数组。如果 size 不是 None,它必须与提供的 size 具有相同的形状,并且必须匹配输出值的类型。

返回

out ndarray 或标量

从参数化的标准伽马分布中抽取样本。

注意

Gamma 分布的概率密度为

其中 是形状, 是比例, 是 Gamma 函数。

Gamma 分布通常用于模拟电子元件的故障时间,并且自然出现在与泊松分布事件之间的等待时间相关的过程中。

参考

1

Weisstein, Eric W. “伽马分布”。来自MathWorld-A Wolfram Web 资源。http://mathworld.wolfram.com/GammaDistribution.html

2

维基百科,“Gamma distribution”,https://en.wikipedia.org/wiki/Gamma_distribution

例子

从分布中抽取样本:

>>> shape, scale = 2., 1. # mean and width
>>> s = np.random.default_rng().standard_gamma(shape, 1000000)

显示样本的直方图以及概率密度函数:

>>> import matplotlib.pyplot as plt
>>> import scipy.special as sps  
>>> count, bins, ignored = plt.hist(s, 50, density=True)
>>> y = bins**(shape-1) * ((np.exp(-bins/scale))/  
...                       (sps.gamma(shape) * scale**shape))
>>> plt.plot(bins, y, linewidth=2, color='r')  
>>> plt.show()
numpy-random-Generator-standard_gamma-1.png

相关用法


注:本文由纯净天空筛选整理自numpy.org大神的英文原创作品 numpy.random.Generator.standard_gamma。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。