當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python numpy random.mtrand.RandomState.laplace用法及代碼示例


用法:

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

從具有指定位置(或均值)和比例(衰減)的拉普拉斯或雙 index 分布中抽取樣本。

拉普拉斯分布與高斯/正態分布相似,但在峰值處更清晰,並且尾部更胖。它表示兩個獨立的,相同分布的 index 隨機變量之間的差。

參數:
loc float 或 array_like of floats, 可選參數

位置\mu,分布峰值。默認值為0。

scale float 或 array_like of floats, 可選參數

\lambda, index 衰減。默認值為1。必須為非負數。

size int 或 tuple of ints, 可選參數

輸出形狀。如果給定的形狀是(m, n, k), 然後m * n * k抽取樣品。如果尺寸是None(默認),如果返回一個值locscale都是標量。除此以外,np.broadcast(loc, scale).size抽取樣品。

返回值:
out ndarray或標量

從參數化的拉普拉斯分布中抽取樣本。

注意:

具有概率密度函數

f(x; \mu, \lambda) = \frac{1}{2\lambda}
\exp\left(-\frac{|x - \mu|}{\lambda}\right).

拉普拉斯的第一定律,始於1774年,指出誤差的頻率可以表示為誤差絕對值的 index 函數,從而得出拉普拉斯分布。對於經濟學和衛生科學中的許多問題,這種分布似乎比標準的高斯分布更好地對數據建模。

參考文獻:

[1]M. Abramowitz和I.A. Stegun(編輯)。 “帶有公式,圖形和數學表的數學函數手冊,第9次印刷”,紐約:多佛,1972年。
[2]Kotz,Samuel等等“拉普拉斯分布與歸納”,Birkhauser,2001年。
[3]韋斯斯坦,埃裏克·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.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)
../../../_images/numpy-random-mtrand-RandomState-laplace-1.png

注:本文由純淨天空篩選整理自 numpy.random.mtrand.RandomState.laplace。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。