numpy.random.Generator.standard_cauchy#
方法
- random.Generator.standard_cauchy(size=None)#
從標準柯西分佈(眾數 = 0)中抽取樣本。
也稱為勞倫茲分佈。
- 參數:
- sizeint 或 int 元組,選用
輸出形狀。如果給定的形狀是例如
(m, n, k)
,則會抽取m * n * k
個樣本。預設值為 None,在這種情況下會傳回單一值。
- 傳回值:
- samplesndarray 或純量
抽取的樣本。
註解
完整柯西分佈的機率密度函數為
\[P(x; x_0, \gamma) = \frac{1}{\pi \gamma \bigl[ 1+ (\frac{x-x_0}{\gamma})^2 \bigr] }\]而標準柯西分佈僅設定 \(x_0=0\) 和 \(\gamma=1\)
柯西分佈出現在受驅諧波振盪器問題的解中,也描述了譜線展寬。它也描述了以隨機角度傾斜的線與 x 軸相交的值的分佈。
當研究假設檢定(假設常態性)時,觀察檢定在來自柯西分佈的資料上的表現,可以很好地指示它們對重尾分佈的敏感度,因為柯西分佈看起來非常像高斯分佈,但尾部更重。
參考文獻
[1]NIST/SEMATECH 電子統計方法手冊,「柯西分佈」,https://www.itl.nist.gov/div898/handbook/eda/section3/eda3663.htm
[2]Weisstein, Eric W. 「柯西分佈。」來自 MathWorld–Wolfram 網路資源。https://mathworld.wolfram.com/CauchyDistribution.html
[3]維基百科,「柯西分佈」 https://en.wikipedia.org/wiki/Cauchy_distribution
範例
繪製樣本並繪製分佈圖
>>> import matplotlib.pyplot as plt >>> rng = np.random.default_rng() >>> s = rng.standard_cauchy(1000000) >>> s = s[(s>-25) & (s<25)] # truncate distribution so it plots well >>> plt.hist(s, bins=100) >>> plt.show()