2011-05-05 135 views
4

我运行下面的命令TukeyHSD内之后因子ANOVA

a1 <- aov(Ratio~(Condition*Event) + Error(Participant/(Condition*Event)), Data) 
summary(a1) 

输出正确的结果(ANOVA表等)。

当我运行:

TukeyHSD(A1, “条件”)

我得到:在UseMethod( “TukeyHSD”)错误:没有适用的方法 “TukeyHSD”

为什么ANOVA能够工作,但不是TukeyHSD?因素变量内都是字符串(条件有3个级别,事件有4个级别)。

编辑: 当我重做没有错误条款的aov它的工作,但Tukey显示任何配对之间没有显着差异(ANOVA是显着的信心)。这是否意味着Tukey正在纠正多重比较?

+0

也许提供你的data.frame的'str'。或者更好的是,提供相关对象的'dput()'。 – Chase 2011-05-05 22:02:22

+1

用'Error()''aov()'返回一个类为''aovlist“”listof“'的类。 TukeyHSD显然没有任何一个类的方法。 – kmm 2011-05-05 22:22:08

+0

凯文,为你刚刚写下的内容创建一个“答案”,以便我可以给你信任。 – LDK 2011-05-05 23:16:50

回答

5

aov()Error()返回类别为"aovlist" "listof"的对象。 TukeyHSD显然没有任何一个类的方法。

2
library(laercio) 
some.aov <- aov(Ratio~(Condition*Event) + Error(Participant/(Condition*Event)), Data) 
anova(some.aov) 
LTukey(some.aov,"Condition") 
+0

它不接受这种模型,只有从'aov'返回的没有错误结构的标准模型(比如'TukeyHSD')。 – chl 2011-05-06 11:01:15

4

作为替代传统的重复测量方差分析个体内的设计,您可以考虑使用线性混合效应的方法。它越来越多地用于科学界,避免了一些方差分析的缺陷,同时考虑到更复杂的错误结构。对于连续响应变量,nlme包已足够,但您也可以使用lme4,这样可以进一步处理分类响应变量。对于多重比较(包括Tukey的事后测试),则multcomp包(请参阅glht()函数)可用于装有nlme::lme的混合效果模型,如此处所述:Repeated Measures ANOVA using R

有关您的设计的一个简短评论:如果您的响应(相关)变量Ratio是比例或有界值,您可能会考虑使用不同的链接功能。