scipy.stats.kstat¶
- scipy.stats.kstat(data, n=2)[源代码]¶
返回第n个k-统计量(到目前为止,1<=n<=4)。
第n个k统计量k_n是n个累积量kappa_n的唯一对称无偏估计。
- 参数
- dataarray_like
输入数组。请注意,n-D输入被展平。
- nint,{1,2,3,4},可选
默认值等于2。
- 退货
- kstat浮动
第n个k-统计量。
注意事项
对于样本大小为n的情况,前几个k统计量由下式给出:
\[k_{1} = \mu k_{2} = \frac{n}{n-1} m_{2} k_{3} = \frac{ n^{2} } {(n-1) (n-2)} m_{3} k_{4} = \frac{ n^{2} [(n + 1)m_{4} - 3(n - 1) m^2_{2}]} {(n-1) (n-2) (n-3)}\]哪里 \(\mu\) 是样本均值, \(m_2\) 是样本方差,并且 \(m_i\) 是第i个样本中心时刻。
参考文献
http://mathworld.wolfram.com/k-Statistic.html
http://mathworld.wolfram.com/Cumulant.html
示例
>>> from scipy import stats >>> from numpy.random import default_rng >>> rng = default_rng()
随着样本量的增加,n阶矩和n阶k统计量收敛到相同的数字(尽管它们不相同)。在正态分布的情况下,它们收敛到零。
>>> for n in [2, 3, 4, 5, 6, 7]: ... x = rng.normal(size=10**n) ... m, k = stats.moment(x, 3), stats.kstat(x, 3) ... print("%.3g %.3g %.3g" % (m, k, m-k)) -0.631 -0.651 0.0194 # random 0.0282 0.0283 -8.49e-05 -0.0454 -0.0454 1.36e-05 7.53e-05 7.53e-05 -2.26e-09 0.00166 0.00166 -4.99e-09 -2.88e-06 -2.88e-06 8.63e-13