表面上看方差分析是检验多个总体均值是否相等的统计方法,但实质上它所研究的是分类型自变量对数值型因变量的影响,例如,变量之间有没有关系,关系的强弱如何。方差分析就是通过检验各总体的均值是否是否相等来判断分类型自变量对数值型变量是否有显著影响。
比如我要分析行业和收入的关系,行业为分类型自变量,收入为数值型变量,就是不同行业分别对其行业从业人员求收入均值吗,然后看看是否相等???
方差分析的三个基本假定:
- 每个总体都应服从正态分布
- 各个总体的方差必须相同
- 观察值是独立的
image.png
image.png
image.png
image.png
image.png
下面是用python代码解决上述问题
from scipy import stats
dict_ = {'零售业': [57,66,49,40,34,53,44],
'旅游业': [67,39,29,45,56,51],
'航空公司': [31,49,21,34,40],
'家电制作业': [44,51,65,77,58]}
# 现单因素方差分析用到了scipy.stats.f_oneway()方法
# 在用之前需要先检验方差齐性,用到了levene test。
retail = dict_['零售业']
tourism = dict_['旅游业']
airline = dict_['航空公司']
manufacture = dict_['家电制作业']
# 方差齐性分析
# 原假设是方差是一致的,如果pvalue小于0.05,则方差不齐
f, p = stats.levene(retail, tourism, airline, manufacture)
print('p-value', p)
# 方差分析
# 原假设均值是一致的,如果pvalue小于0.05, 则均值不等
f, p = stats.f_oneway(retail, tourism, airline, manufacture)
print('方差分析 p-value:', p)
# 因为计算出p小于0.05所以,可以推出投诉量与行业相关
关系强度的测量
用组间平方和(SSA)占总平方和(SST)的比例大小来反映,这一比例记成R方
image.png
网友评论