scipy.stats.levene

scipy.stats.levene(*args, center='median', proportiontocut=0.05)[源代码]

执行等方差的Levene检验。

Levene检验检验零假设,即所有输入样本都来自方差相等的总体。莱文试验是巴特利特试验的一种替代方法 bartlett 在与常态有显著偏离的情况下。

参数
样本1,样本2,.array_like

样本数据,可能具有不同的长度。只接受一维样本。

center{‘Mean’,‘Medium’,‘Trimmed’},可选

在测试中使用数据的哪个函数。默认值为“Medium”。

proportiontocut浮动,可选

什么时候 center 是“修剪”的,这给出了要从两端剪切的数据点的比例。(请参阅 scipy.stats.trim_mean 。)默认值为0.05。

退货
statistic浮动

测试统计数据。

pvalue浮动

测试的p值。

注意事项

莱文试验有三种可能的变体。这些可能性及其推荐用法如下:

  • ‘Medium’:推荐用于不对称(非正态)分布>

  • “Mean”:建议用于对称、中等尾部分布。

  • “Trimmed”:建议用于重尾分布。

使用平均数的测试版本是在Levene的原始文章中提出的 ([2]) 而Brown和Forsythe已经研究过中位数和修整平均数 ([3]) ,有时也被称为Brown-Forsythe测试。

参考文献

1

https://www.itl.nist.gov/div898/handbook/eda/section3/eda35a.htm

2

李文,H.(1960)。“概率与统计的贡献:哈罗德·霍特林荣誉论文”,I.Olkin等人著。主编,斯坦福大学出版社,第278-292页。

3

布朗,M.B.和Forsythe,A.B.(1974),“美国统计协会杂志”,69,364-367

示例

测试列表是否 abc 来自具有相等方差的种群。

>>> from scipy.stats import levene
>>> a = [8.88, 9.12, 9.04, 8.98, 9.00, 9.08, 9.01, 8.85, 9.06, 8.99]
>>> b = [8.88, 8.95, 9.29, 9.44, 9.15, 9.58, 8.36, 9.18, 8.67, 9.05]
>>> c = [8.95, 9.12, 8.95, 8.85, 9.03, 8.84, 9.07, 8.98, 8.86, 8.98]
>>> stat, p = levene(a, b, c)
>>> p
0.002431505967249681

较小的p值表明总体的方差不相等。

这并不令人惊讶,因为 b 比之大得多。 ac

>>> [np.var(x, ddof=1) for x in [a, b, c]]
[0.007054444444444413, 0.13073888888888888, 0.008890000000000002]