本文简要介绍 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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。