R语言统计分析——双因素方差分析

参考资料:R语言实战【第2版】

        在双因素方差分析中,受试者被分配到两因子的交叉类别组中。以基础安装包中的ToothGrowth数据集为例,操作如下:

attach(ToothGrowth)
# 查看数据
head(ToothGrowth)
# 查看supp与dose交叉表
table(supp,dose)
# 查看均值
aggregate(len~supp+dose,FUN=mean)
# 查看标准差
aggregate(len~supp+dose,FUN=sd)
# 将dose设置为因子类型
dose<-as.factor(dose)
# 两因素方差分析
fit<-aov(len~supp*dose)
# 查看分析结果
summary(fit)
detach(ToothGrowth)

        上面table()函数的预处理的结果显示:该设计是均衡设计(各设计单元中样本大小都相同)

        aggregate()函数处理获得各单元的均值和标准差。如下:

        dose变量被转换为因子变量,这样aov()函数就会将其当作一个分组变量,而不是一个数值型的协变量。用summary()函数得到方差分析表,可以看到主效应和交互效应都非常显著。 

        下面用interaction.plot()函数来展示双因素方差分析的交互作用:

interaction.plot(dose,
                 ToothGrowth$supp,
                 ToothGrowth$len,
                 type="b",
                 col=c("red","blue"),
                 pch=c(16,18),
                 main="Interaction between Dose and Supplement Type")

        我们还可以用gplots包中的plotmeans()函数来展示交互效应(图形中包含了均值、误差线和样本大小)。如下:

# 加载gplots包
library(gplots)
attach(ToothGrowth)
# 绘图
plotmeans(len~interaction(supp,dose,sep=" "),
          connect = list(c(1,3,5),c(2,4,6)),
          col=c("red","blue"),
          main="Interaction Plot with 95% CIs",
          xlab="Treatment and Dose Combination")
detach(ToothGrowth)

      我们还可以用HH包中的interaction2wt()函数来可视化结果,图形对任意顺序的因子设计的主效应和交互效应都会进行展示。此种方式更为推荐。因为它能展示任意复杂度的设计(双因素方差分析、三因素方差分析)的主效应(箱线图)和交互效应。

# 加载HH包
library(HH)
attach(ToothGrowth)
# 绘图
interaction2wt(len~supp*dose)
detach(ToothGrowth)

  

备注:本例中没有涵盖模型假设检验和均值比较的内容,因为他们只是单因素方差分析的一个自然扩展,和单因素方差分析是一样的。此外,本例的设计是均衡的,故而不担心效应顺序的影响

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值