Python

拜拜、爱过 提交于 2020-05-01 14:45:52

 

Python - 列联表的独立性检验(卡方检验)

想对两个或两个以上因子彼此之间是否相互独立做检验时,就要用到卡方检验,原以为在Python中实现会像R的chisq.test一样简便,但scipy的stats模块功能实在分得太细,之前查到的是stats中的chisquare方法,但尝试过后发现chisquare实际上是做适合性检验的。 

e.g. 三种农药的杀虫数据

杀虫效果
死亡数 37 49 23
未死亡数 150 100 57

分析杀虫效果与农药类型是否有关

import numpy as np
from scipy.stats import chi2_contingency

d = np.array([[37, 49, 23], [150, 100, 57]]) chi2_contingency(d)

输出为: 
(7.6919413561281065, 
0.021365652322337315, 
2, 
array([[ 48.99759615, 39.04086538, 20.96153846], 
[ 138.00240385, 109.95913462, 59.03846154]]))

第一个值为卡方值,第二个值为P值,第三个值为自由度,第四个为与原数据数组同维度的对应理论值

具体参考文档:scipy.stats.chi2_contingency

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!