当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python dask.array.stats.kurtosis用法及代码示例


用法:

dask.array.stats.kurtosis(a, axis=0, fisher=True, bias=True, nan_policy='propagate')

计算数据集的峰度(Fisher 或 Pearson)。

此文档字符串是从 scipy.stats.kurtosis 复制而来的。

可能存在与 Dask 版本的一些不一致之处。

峰度是第四个中心矩除以方差的平方。如果使用 Fisher 的定义,则从结果中减去 3.0,得到正态分布的 0.0。

如果偏差为 False,则使用 k 统计量计算峰度以消除来自偏差矩估计器的偏差

使用kurtosistest 查看结果是否足够接近正常。

参数

a数组

计算峰度的数据。

axisint 或 None,可选

计算峰度的轴。默认值为 0。如果没有,则计算整个数组 a

fisher布尔型,可选

如果为 True,则使用 Fisher 的定义(正常 ==> 0.0)。如果为 False,则使用 Pearson 的定义(正常 ==> 3.0)。

bias布尔型,可选

如果为 False,则针对统计偏差校正计算。

nan_policy{‘propagate’, ‘raise’, ‘omit’},可选

定义当输入包含 nan 时如何处理。 ‘propagate’ 返回 nan,‘raise’ 引发错误,‘omit’ 执行忽略 nan 值的计算。默认为‘propagate’。

返回

kurtosis数组

沿轴的值的峰度。如果所有值都相等,Fisher 定义返回 -3,Pearson 定义返回 0。

参考

1

Zwillinger, D. 和 Kokoska, S. (2000)。 CRC 标准概率和统计表和公式。查普曼和霍尔:纽约。 2000 年。

例子

在 Fisher 的定义中,正态分布的峰度为零。在以下示例中,峰度接近于零,因为它是根据数据集计算的,而不是根据连续分布计算的。

>>> from scipy.stats import norm, kurtosis  
>>> data = norm.rvs(size=1000, random_state=3)  
>>> kurtosis(data)  
-0.06928694200380558

具有较高峰度的分布具有较重的尾部。 Fisher 定义中正态分布的零值峰度可以作为参考点。

>>> import matplotlib.pyplot as plt  
>>> import scipy.stats as stats  
>>> from scipy.stats import kurtosis
>>> x = np.linspace(-5, 5, 100)  
>>> ax = plt.subplot()  
>>> distnames = ['laplace', 'norm', 'uniform']
>>> for distname in distnames:  
...     if distname == 'uniform':
...         dist = getattr(stats, distname)(loc=-2, scale=4)
...     else:
...         dist = getattr(stats, distname)
...     data = dist.rvs(size=1000)
...     kur = kurtosis(data, fisher=True)
...     y = dist.pdf(x)
...     ax.plot(x, y, label="{}, {}".format(distname, round(kur, 3)))
...     ax.legend()

拉普拉斯分布的尾部比正态分布重。均匀分布(具有负峰度)的尾部最薄。

相关用法


注:本文由纯净天空筛选整理自dask.org大神的英文原创作品 dask.array.stats.kurtosis。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。