[R] library(car) Anova() and Error-term in aov()
John Fox
jfox at mcmaster.ca
Thu Aug 26 15:40:21 CEST 2004
Dear Peter and Paul,
As Paul discovered, Anova() doesn't handle aovlist objects.
As a general matter, one should be careful with "type-III" tests, since it's
easy to test hypotheses that aren't sensible (e.g., tests ostensibly of main
effects that aren't reasonably interpretable as tests of main effects). For
example, SAS (and I assume SPSS) produce type-III tests in analysis of
covariance that aren't generally sensible. I haven't thought about whether
there's a similar trap in unbalanced repeated-measures ANOVA. By the way,
sequential (or "type-I") tests are rarely sensible in my opinion.
Regards,
John
> -----Original Message-----
> From: r-help-bounces at stat.math.ethz.ch
> [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of Peter Dalgaard
> Sent: Thursday, August 26, 2004 7:08 AM
> To: Paul Lemmens
> Cc: r-help at stat.math.ethz.ch
> Subject: Re: [R] library(car) Anova() and Error-term in aov()
>
> Paul Lemmens <P.Lemmens at nici.kun.nl> writes:
>
> > Dear all,
> >
> > Type III SS time again. This case trying to reproduce some
> SPSS (type
> > III) data in R for a repeated measures anova with a betwSS factor
> > included. As I understand this list etc, if I want type III
> then I can
> > do
> >
> > library(car)
> > Anova(lm.obj, type="III")
> >
> > But for the repeated measures anova, I need to include an
> Error-term
> > in the aov() call (Psychology-guide from Jonathan Baron)
> which results
> > in multiple lm() calls. Anova() does not seem capable to
> handle this
> > situation. Or am I tackling Type III calculation, in this case with
> > Error(), the wrong way (besides ignoring advice concerning
> Type I vs
> > III)??
> >
> > For instance,
> >
> > dat <- rnorm(12)
> > pp <- factor(c(rep(1:3,2), rep(4:6,2))) betw <- gl(2,6) A <-
> > factor(rep(c(rep('a',3),rep('b',3)), 2)) taov <-
> > aov(dat~betw*A+Error(pp/A)) Anova(taov, type="III") # Goes
> wrong with
> > following error.
> > #Error in Anova(taov, type = "III") : no applicable method
> for "Anova"
> >
> > Phrased differently, ?Anova says "Calculates type-II or type-III
> > analysis-of-variance tables for model objects produced by 'lm' and
> > 'glm'", so it's not suitable for the aovlist that aov() with
> > Error()-term returns. How can I compute Type III SS for
> such objects?
>
> Well, ...
>
> In a balanced design you don't need Type III SS (because they
> are all the same) -- summary(taov) will do.
>
> In an unbalanced design, you don't want to use aov() with an
> Error term. (Slightly overstated, but you certainly get to
> think very closely if the unbalance is in the Error model).
>
> I'm not actually sure what SPSS does in the case of
> unbalanced designs (complete-case analysis?).
>
> In principle, with a balanced Error model, you should be able
> to extract, say, taov[[2]] and do an Anova() or drop1() on
> that, but it doesn't work because the object is not really an
> "lm" object, even though
>
> > class(taov[[2]])
> [1] "aov" "lm"
>
> but we get things like
>
> > model.frame(as(taov[[2]],"lm"))
> $method
> lm
>
>
> --
> O__ ---- Peter Dalgaard Blegdamsvej 3
> c/ /'_ --- Dept. of Biostatistics 2200 Cph. N
> (*) \(*) -- University of Copenhagen Denmark Ph:
> (+45) 35327918
> ~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX:
> (+45) 35327907
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide!
> http://www.R-project.org/posting-guide.html
More information about the R-help
mailing list