R: 2-way Anova 与 ez 包不匹配
R: 2-way Anova does not match with ez package
我正在使用 ez 包,但我意识到结果有时与方差分析函数不匹配。我想知道我做错了什么。
options(contrasts=c("contr.sum","contr.poly"))
datafilename="https://docs.google.com/spreadsheets/d/1PNHSBMUdPnB_mnP_WrcxYYiwCwN8KHL2Q57KoAoWdAY/pub?gid=0&single=true&output=csv"
data.ex2=read.csv(datafilename,header=1,stringsAsFactors=FALSE)
data.ex2
aov.ex2 = aov(value~Treat*Gender,data=data.ex2 )
summary(aov.ex2)
### testing the ez package now
library(ez)
A = ezANOVA(
data = data.ex2
, dv = value
, wid = ID
, between = .(Treat,Gender)
,return_aov=TRUE
, type = 3
)
print (A$ANOVA)
当我使用另一个网站上给出的示例时,结果完全匹配,所以我想知道我的 table 是否有问题。如果来自这里的数据集,则匹配的示例。
数据文件名="http://personality-project.org/r/datasets/R.appendix2.data"
谢谢!
您对每个分组都有多个 ID 观察值。当 运行 你的代码时,警告中提到了这一点,它说这些值已经折叠到它们的平均值。所以,在幕后它会做以下事情,
library(plyr)
collapsed <- ddply(data.ex2, .(ID, Treat, Gender), function(x)
mean(x[, "value"]))
## the mean value is now in column `V1`
aov(V1 ~ Treat*Gender, data=collapsed)
好吧,我终于明白了。需要最后一个命令。
drop1(aov.ex2, .~., test="F")
现在可以使用了,作为参考我从这里得到了这个信息:
我正在使用 ez 包,但我意识到结果有时与方差分析函数不匹配。我想知道我做错了什么。
options(contrasts=c("contr.sum","contr.poly"))
datafilename="https://docs.google.com/spreadsheets/d/1PNHSBMUdPnB_mnP_WrcxYYiwCwN8KHL2Q57KoAoWdAY/pub?gid=0&single=true&output=csv"
data.ex2=read.csv(datafilename,header=1,stringsAsFactors=FALSE)
data.ex2
aov.ex2 = aov(value~Treat*Gender,data=data.ex2 )
summary(aov.ex2)
### testing the ez package now
library(ez)
A = ezANOVA(
data = data.ex2
, dv = value
, wid = ID
, between = .(Treat,Gender)
,return_aov=TRUE
, type = 3
)
print (A$ANOVA)
当我使用另一个网站上给出的示例时,结果完全匹配,所以我想知道我的 table 是否有问题。如果来自这里的数据集,则匹配的示例。
数据文件名="http://personality-project.org/r/datasets/R.appendix2.data"
谢谢!
您对每个分组都有多个 ID 观察值。当 运行 你的代码时,警告中提到了这一点,它说这些值已经折叠到它们的平均值。所以,在幕后它会做以下事情,
library(plyr)
collapsed <- ddply(data.ex2, .(ID, Treat, Gender), function(x)
mean(x[, "value"]))
## the mean value is now in column `V1`
aov(V1 ~ Treat*Gender, data=collapsed)
好吧,我终于明白了。需要最后一个命令。
drop1(aov.ex2, .~., test="F")
现在可以使用了,作为参考我从这里得到了这个信息: