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


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


本文簡要介紹 python 語言中 numpy.random.laplace 的用法。

用法:

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

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

拉普拉斯分布類似於高斯/正態分布,但在峰值處更銳利,尾部更粗。它表示兩個獨立的、同分布的 index 隨機變量之間的差異。

注意

新代碼應改為使用default_rng() 實例的laplace 方法;請參閱快速入門。

參數

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.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-laplace-1.png

相關用法


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