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
示例
测试列表是否 a , b 和 c 来自具有相等方差的种群。
>>> 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 比之大得多。 a 和 c :
>>> [np.var(x, ddof=1) for x in [a, b, c]] [0.007054444444444413, 0.13073888888888888, 0.008890000000000002]