本文簡要介紹 python 語言中 scipy.stats.gstd
的用法。
用法:
scipy.stats.gstd(a, axis=0, ddof=1)#
計算數組的幾何標準差。
幾何標準偏差說明了一組數字的分布,其中幾何平均值是首選的。它是一個乘法因子,因此是一個無量綱量。
它被定義為
log(a)
標準差的 index 。在數學上,總體幾何標準差可以評估為:gstd = exp(std(log(a)))
- a: array_like
包含樣本數據的類似對象的數組。
- axis: int,元組或無,可選
操作的軸。默認值為 0。如果沒有,則計算整個數組 a。
- ddof: 整數,可選
幾何標準偏差計算中的自由度校正。默認值為 1。
- gstd: ndarray 或浮點數
幾何標準差的數組。如果 axis 是 None 或 a 是一維數組,則返回一個浮點數。
參數 ::
返回 ::
注意:
由於計算需要使用對數,幾何標準差僅支持嚴格的正值。任何非正值或無限值都會引發ValueError。幾何標準差有時會與標準差的指數混淆,
exp(std(a))
.相反,幾何標準偏差是exp(std(log(a)))
.默認值為ddof與其他包含 ddof 的函數使用的默認值 (0) 不同,例如np.std
和np.nanstd
.參考:
[1]“Geometric standard deviation”,維基百科,https://en.wikipedia.org/wiki/Geometric_standard_deviation.
[2]柯克伍德,T. B.,“幾何方法和分散測量”,生物識別,第一卷。 35,第 908-909 頁,1979
例子:
求 log-normally 分布樣本的幾何標準差。請注意,分布的標準差為 1,在對數尺度上,這大約為
exp(1)
。>>> import numpy as np >>> from scipy.stats import gstd >>> rng = np.random.default_rng() >>> sample = rng.lognormal(mean=0, sigma=1, size=1000) >>> gstd(sample) 2.810010162475324
計算多維數組和給定軸的幾何標準偏差。
>>> a = np.arange(1, 25).reshape(2, 3, 4) >>> gstd(a, axis=None) 2.2944076136018947 >>> gstd(a, axis=2) array([[1.82424757, 1.22436866, 1.13183117], [1.09348306, 1.07244798, 1.05914985]]) >>> gstd(a, axis=(1,2)) array([2.12939215, 1.22120169])
幾何標準偏差進一步處理掩碼數組。
>>> a = np.arange(1, 25).reshape(2, 3, 4) >>> ma = np.ma.masked_where(a > 16, a) >>> ma masked_array( data=[[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]], [[13, 14, 15, 16], [--, --, --, --], [--, --, --, --]]], mask=[[[False, False, False, False], [False, False, False, False], [False, False, False, False]], [[False, False, False, False], [ True, True, True, True], [ True, True, True, True]]], fill_value=999999) >>> gstd(ma, axis=2) masked_array( data=[[1.8242475707663655, 1.2243686572447428, 1.1318311657788478], [1.0934830582350938, --, --]], mask=[[False, False, False], [False, True, True]], fill_value=999999)
相關用法
- Python SciPy stats.genpareto用法及代碼示例
- Python SciPy stats.gumbel_l用法及代碼示例
- Python SciPy stats.gzscore用法及代碼示例
- Python SciPy stats.gompertz用法及代碼示例
- Python SciPy stats.genlogistic用法及代碼示例
- Python SciPy stats.gennorm用法及代碼示例
- Python SciPy stats.gibrat用法及代碼示例
- Python SciPy stats.genhalflogistic用法及代碼示例
- Python SciPy stats.gmean用法及代碼示例
- Python SciPy stats.gamma用法及代碼示例
- Python scipy.stats.gilbrat用法及代碼示例
- Python SciPy stats.geom用法及代碼示例
- Python SciPy stats.genexpon用法及代碼示例
- Python SciPy stats.genhyperbolic用法及代碼示例
- Python SciPy stats.gaussian_kde用法及代碼示例
- Python SciPy stats.gumbel_r用法及代碼示例
- Python SciPy stats.gausshyper用法及代碼示例
- Python SciPy stats.gengamma用法及代碼示例
- Python SciPy stats.goodness_of_fit用法及代碼示例
- Python SciPy stats.genextreme用法及代碼示例
- Python SciPy stats.geninvgauss用法及代碼示例
- Python SciPy stats.anderson用法及代碼示例
- Python SciPy stats.iqr用法及代碼示例
- Python SciPy stats.skewnorm用法及代碼示例
- Python SciPy stats.cosine用法及代碼示例
注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.stats.gstd。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。