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


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


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

用法:

random.Generator.laplace(loc=0.0, scale=1.0, size=None)

从具有指定位置(或平均值)和尺度(衰减)的拉普拉斯或双 index 分布中抽取样本。

拉普拉斯分布类似于高斯/正态分布,但在峰值处更锐利,尾部更粗。它表示两个独立的、同分布的 index 随机变量之间的差异。

参数

loc float 或 数组 的浮点数,可选

分布峰的位置 。默认值为 0。

scale float 或 数组 的浮点数,可选

, index 衰减。默认值为 1。必须为非负数。

size int 或整数元组,可选

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

返回

out ndarray 或标量

从参数化拉普拉斯分布中抽取样本。

注意

它具有概率密度函数

从 1774 年开始,拉普拉斯第一定律指出,误差的频率可以表示为误差绝对幅度的 index 函数,这导致了拉普拉斯分布。对于经济学和健康科学中的许多问题,这种分布似乎比标准的高斯分布更能对数据进行建模。

参考

1

Abramowitz, M. 和 Stegun, I. A. (Eds.)。 “带有公式、图表和数学表格的数学函数手册,第 9 次印刷,”纽约:多佛,1972 年。

2

科茨、塞缪尔等。人。 “拉普拉斯分布和概括”,Birkhauser,2001 年。

3

Weisstein, Eric W. “拉普拉斯分布”。来自MathWorld-A Wolfram Web 资源。http://mathworld.wolfram.com/LaplaceDistribution.html

4

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

例子

从分布中抽取样本

>>> loc, scale = 0., 1.
>>> s = np.random.default_rng().laplace(loc, scale, 1000)

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

>>> import matplotlib.pyplot as plt
>>> count, bins, ignored = plt.hist(s, 30, density=True)
>>> x = np.arange(-8., 8., .01)
>>> pdf = np.exp(-abs(x-loc)/scale)/(2.*scale)
>>> plt.plot(x, pdf)

绘制高斯进行比较:

>>> g = (1/(scale * np.sqrt(2 * np.pi)) *
...      np.exp(-(x - loc)**2 / (2 * scale**2)))
>>> plt.plot(x,g)
numpy-random-Generator-laplace-1.png

相关用法


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