Ullrich Ecker
2008-May-28 09:08 UTC
[R] Tukey HSD (or other post hoc tests) following repeated measures ANOVA
Hi everyone, I am fairly new to R, and I am aware that others have had this problem before, but I have failed to solve the problem from previous replies I found in the archives. As this is such a standard procedure in psychological science, there must be an elegant solution to this...I think. I would much appreciate a solution that even I could understand... ;-) Now, I want to calculate a post-hoc test following up a within-subjects ANOVA. The dv is reaction time (RT), there is a 3-level Condition factor (Cond; within-subjects), a number of subjects (Subj), and the dataframe is called WMU3C. The model is > RT.aov <- aov(RT~Cond + Error(Subj/Cond), WMU3C) I understand that TukeyHSD only works with an aov object, but that RT.aov is an aovlist object. > class(RT.aov) [1] "aovlist" "listof" I've tried to work around it using the "maiz" example in the MMC documentation of the HH package (a solution previously recommended), but I couldn't get it to work: My best shot was to calculate another aov avoiding the error term (I don't see how this could be a feasible approach, but that's how I understood the MMC example) and a contrast vector (contrasting conditions 2 and 3): I have to admit that I don't quite understand what I'm doing here (not that you couldn't tell) > RT2.aov <- aov(terms(RT~Subj*Cond, WMU3C)) > Cond.lmat <- c(0,1,-1) > Tukey <- glht.mmc(RT2.aov, focus = "Cond", focus.lmat = Cond.lmat) yielding Error in mvt(lower = carg$lower, upper = carg$upper, df = df, corr = carg$corr, : NA/NaN/Inf in foreign function call (arg 6) In addition: Warning message: In cov2cor(covm) : diagonal has non-finite entries > Tukey height Thank you very much for your help! Ullrich Dr Ullrich Ecker Postdoctoral Research Associate Cognitive Science Laboratories School of Psychology (Mailbag M304) Room 211 Sanders Building University of Western Australia 35 Stirling Hwy Crawley WA 6009 Australia Office: +61 8 6488 3266 Mobile: +61 4 5822 0072 Fax: +61 8 6488 1006 E-mail: ullrich.ecker@uwa.edu.au Web: www.cogsciwa.com [[alternative HTML version deleted]]
Dieter Menne
2008-May-28 10:31 UTC
[R] Tukey HSD (or other post hoc tests) following repeated measures ANOVA
Ullrich Ecker <ullrich.ecker <at> uwa.edu.au> writes:> I am fairly new to R, and I am aware that others have had this > problem before, but I have failed to solve the problem from previous > replies I found in the archives. > > Now, I want to calculate a post-hoc test following up a within-subjects ANOVA.Probably the best is package multcomp. By default, it gives confidence intervals, which is certainly much better than p-values. Haven't tried if you can get p-values. Dieter library(multcomp) amod <- aov(breaks ~ wool + tension, data = warpbreaks) wht <- glht(amod, linfct = mcp(tension = "Tukey"))
Mark Difford
2008-May-30 07:16 UTC
[R] Tukey HSD (or other post hoc tests) following repeated measures ANOVA
Hi Ullrich,>> The model is >> RT.aov <- aov(RT~Cond + Error(Subj/Cond), WMU3C) >> I understand that TukeyHSD only works with an aov object, but that >> RT.aov is an aovlist object.You want to use lme() in package nlme, then glht() in the multcomp package. This will give you multiplicity adjusted p-values and confidence intervals. ## Example require(MASS) ## for oats data set require(nlme) ## for lme() require(multcomp) ## for multiple comparison stuff Aov.mod <- aov(Y ~ N + V + Error(B/V), data = oats) Lme.mod <- lme(Y ~ N + V, random = ~1 | B/V, data = oats) summary(Aov.mod) anova(Lme.mod) summary(Lme.mod) summary(glht(Lme.mod, linfct=mcp(V="Tukey"))) HTH, Mark. Ullrich Ecker wrote:> > Hi everyone, > > I am fairly new to R, and I am aware that others have had this > problem before, but I have failed to solve the problem from previous > replies I found in the archives. > > As this is such a standard procedure in psychological science, there > must be an elegant solution to this...I think. > > I would much appreciate a solution that even I could understand... ;-) > > > Now, I want to calculate a post-hoc test following up a within-subjects > ANOVA. > > The dv is reaction time (RT), there is a 3-level Condition factor > (Cond; within-subjects), a number of subjects (Subj), and the > dataframe is called WMU3C. > > The model is > > > RT.aov <- aov(RT~Cond + Error(Subj/Cond), WMU3C) > > I understand that TukeyHSD only works with an aov object, but that > RT.aov is an aovlist object. > > > class(RT.aov) > [1] "aovlist" "listof" > > I've tried to work around it using the "maiz" example in the MMC > documentation of the HH package (a solution previously recommended), > but I couldn't get it to work: My best shot was to calculate another > aov avoiding the error term (I don't see how this could be a feasible > approach, but that's how I understood the MMC example) and a contrast > vector (contrasting conditions 2 and 3): > > I have to admit that I don't quite understand what I'm doing here > (not that you couldn't tell) > > > RT2.aov <- aov(terms(RT~Subj*Cond, WMU3C)) > > Cond.lmat <- c(0,1,-1) > > Tukey <- glht.mmc(RT2.aov, focus = "Cond", focus.lmat = Cond.lmat) > > yielding > > Error in mvt(lower = carg$lower, upper = carg$upper, df = df, corr = > carg$corr, : > NA/NaN/Inf in foreign function call (arg 6) > In addition: Warning message: > In cov2cor(covm) : diagonal has non-finite entries > > > Tukey > height > > > > Thank you very much for your help! > > Ullrich > > > Dr Ullrich Ecker > Postdoctoral Research Associate > Cognitive Science Laboratories > School of Psychology (Mailbag M304) > Room 211 Sanders Building > University of Western Australia > 35 Stirling Hwy > Crawley WA 6009 > Australia > Office: +61 8 6488 3266 > Mobile: +61 4 5822 0072 > Fax: +61 8 6488 1006 > E-mail: ullrich.ecker at uwa.edu.au > Web: www.cogsciwa.com > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > >-- View this message in context: http://www.nabble.com/Tukey-HSD-%28or-other-post-hoc-tests%29-following-repeated-measures-ANOVA-tp17508294p17553029.html Sent from the R help mailing list archive at Nabble.com.