方差分析:单因子与多因子

2019 年 3 月 23 日 R语言中文社区

作者:herain  R语言中文社区专栏作者

知乎ID:https://www.zhihu.com/people/herain-14

个人公众号:品茶的渔夫


1,什么是方差分析:

方差分析(analysis of variance,ANOVA)是分析类别变量对数值因变量影响的一种统计方,其中类别变量称为因子,类别变量的值称为处理或水平。接受处理的对象或实体称为实验单元,方差分析的原理:通过对数据误差的分析来判断类别自变量对数值因变量的影响效果是否显著。


2,误差分解:

3,方差分析的基本假定:

正态性:每个处理所对应的总体服从正态分布

方差齐性:各个总体的方差必须相等

独立性:每个样本数据都来自不同处理的独立样本


4,单因子方差分析:

线性模型:

其中 yii表示第i个处理的第j个观察值;ui表示第i个处理的平均值,eij表示第i个处理的第j个观察值的随机误差。


单因子方差表


然后根据统计量F计算出P值,与置信水平做出判断。

R模拟操作:(研究品种与产量的方差分析)

> example8_2
# A tibble: 30 x 4
X1 地块 品种 产量
<int> <int> <chr> <int>
1 1 1 品种1 81
2 2 2 品种1 82
# ... with 20 more rows

检验:

#正态检验
> library(car)
> library(carData)
> attach(example8_2)
> qqPlot(lm(产量~品种))
#方差检验
> bartlett.test(产量~品种,data=example8_2)
Bartlett test of homogeneity of variances
data: 产量 by 品种
Bartlett's K-squared = 0.30152, df = 2, p-value = 0.8601

方差分析:由于P=0.000158<0.05,所有品种对产量存在影响。

> mode1_1w=aov(产量~品种)
> summary(mode1_1w)
Df Sum Sq Mean Sq F value Pr(>F)
品种 2 560 280.00 12.31 0.000158 ***
Residuals 27 614 22.74
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

5,效应量分析:

在单因子方差分析中因子平方和与总体平方和之比,它反映量在因变量取值的总误差中被因子解释的比例,效应量越大说明自变量与因变量之间的关系就越强。公式为:


6,多重比较:对不同处理之间的均值配对比较就是方差分析的多重比较,主要方法有Fisher的LSD(最小显著差异)法,Tukey-Krammer的HSD方法,感兴趣可以自己查阅资料。


7,双因子方差分析只从与单因子方差分析不同的角度,简单描述:


7.1,模型较复杂:(是否考虑交互效应r可分为两种情况)

考虑交互效应的误差分解

考虑交互效应的双因子方差分析表

7.2,R模拟双因子分析:

> attach(example8_5)
The following objects are masked from example8_2:

产量, 品种, X1

> par(family ='SimSun')
> boxplot(产量~品种+施肥方式,col=c("gold","green","red"),ylab="产量",xlab="品种+施肥方式", data = example8_5)

7.3,主效应方差分析表


> model1_2w<-aov(产量~品种+施肥方式, data=example8_5)
> summary(model1_2w)
Df Sum Sq Mean Sq F value Pr(>F)
品种 2 560 280.0 54.33 5.18e-10 ***
施肥方式 1 480 480.0 93.13 4.42e-10 ***
Residuals 26 134 5.2
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>
#主效应方差分析模型的参数估计
> model1_2w$coefficients
(Intercept) 品种品种2 品种品种3 施肥方式乙
80 -10 -2 8
>

7.4,交叉效应方差分析表:

> model1_2wi<-aov(产量~品种+施肥方式+品种:施肥方式, data=example8_5)
> summary(model1_2wi)
Df Sum Sq Mean Sq F value Pr(>F)
品种 2 560.0 280.0 54.37 1.22e-09 ***
施肥方式 1 480.0 480.0 93.20 9.73e-10 ***
品种:施肥方式 2 10.4 5.2 1.01 0.379
Residuals 24 123.6 5.1
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>
#交叉效应方差分析的模型的参数估计
> model1_2wi$coefficients
(Intercept) 品种品种2 品种品种3
80.2 -9.6 -3.0
施肥方式乙 品种品种2:施肥方式乙 品种品种3:施肥方式乙
7.6 -0.8 2.0
>


最后,我们可以做模型对比:主效应方差分析与交叉效应方差分析模型对比,来佐证交叉效应是否显著。


——————————————

往期精彩:

登录查看更多
3

相关内容

【2020新书】实战R语言4,323页pdf
专知会员服务
100+阅读 · 2020年7月1日
【干货书】用于概率、统计和机器学习的Python,288页pdf
专知会员服务
288+阅读 · 2020年6月3日
【ICML2020-哈佛】深度语言表示中可分流形
专知会员服务
12+阅读 · 2020年6月2日
【干货书】数值计算C编程,319页pdf,Numerical C
专知会员服务
68+阅读 · 2020年4月7日
【经典书】精通机器学习特征工程,中文版,178页pdf
专知会员服务
356+阅读 · 2020年2月15日
【新书】Java企业微服务,Enterprise Java Microservices,272页pdf
一文读懂线性回归、岭回归和Lasso回归
CSDN
34+阅读 · 2019年10月13日
基于R语言进行Box-Cox变换
R语言中文社区
45+阅读 · 2018年11月19日
用 LDA 和 LSA 两种方法来降维和做 Topic 建模
AI研习社
13+阅读 · 2018年8月24日
如果你研究多因子模型,这篇文章看不懂就别玩了!
量化投资与机器学习
26+阅读 · 2018年7月31日
R语言之数据分析高级方法「时间序列」
R语言中文社区
17+阅读 · 2018年4月24日
推荐|网易云音乐分析之推荐算法
人人都是产品经理
10+阅读 · 2018年2月26日
机器学习(28)【降维】之sklearn中PCA库讲解与实战
机器学习算法与Python学习
8+阅读 · 2017年11月27日
机器学习(27)【降维】之主成分分析(PCA)详解
机器学习算法与Python学习
9+阅读 · 2017年11月22日
Arxiv
7+阅读 · 2018年3月22日
Arxiv
3+阅读 · 2018年1月10日
VIP会员
相关资讯
一文读懂线性回归、岭回归和Lasso回归
CSDN
34+阅读 · 2019年10月13日
基于R语言进行Box-Cox变换
R语言中文社区
45+阅读 · 2018年11月19日
用 LDA 和 LSA 两种方法来降维和做 Topic 建模
AI研习社
13+阅读 · 2018年8月24日
如果你研究多因子模型,这篇文章看不懂就别玩了!
量化投资与机器学习
26+阅读 · 2018年7月31日
R语言之数据分析高级方法「时间序列」
R语言中文社区
17+阅读 · 2018年4月24日
推荐|网易云音乐分析之推荐算法
人人都是产品经理
10+阅读 · 2018年2月26日
机器学习(28)【降维】之sklearn中PCA库讲解与实战
机器学习算法与Python学习
8+阅读 · 2017年11月27日
机器学习(27)【降维】之主成分分析(PCA)详解
机器学习算法与Python学习
9+阅读 · 2017年11月22日
Top
微信扫码咨询专知VIP会员