The title says it all, and I'm confused. The following runs a repeated measures aov() in R, and runs what I thought was an equivalent lm() call, but they return different error residuals (although the sums of squares are the same).
Clearly the residuals and fitted values from aov() are the ones used in the model, because their sums of squares add up to each of the model/residual sums of squares reported in summary(my.aov). So what are the actual linear models that are applied to a repeated measures design?
set.seed(1) # make data frame, # 5 participants, with 2 experimental factors, each with 2 levels # factor1 is A, B # factor2 is 1, 2 DF <- data.frame(participant=factor(1:5), A.1=rnorm(5, 50, 20), A.2=rnorm(5, 100, 20), B.1=rnorm(5, 20, 20), B.2=rnorm(5, 50, 20)) # get our experimental conditions conditions <- names(DF)[ names(DF) != "participant" ] # reshape it for aov DFlong <- reshape(DF, direction="long", varying=conditions, v.names="value", idvar="participant", times=conditions, timevar="group") # make the conditions separate variables called factor1 and factor2 DFlong$factor1 <- factor( rep(c("A", "B"), each=10) ) DFlong$factor2 <- factor( rep(c(1, 2), each=5) ) # call aov my.aov <- aov(value ~ factor1*factor2 + Error(participant / (factor1*factor2)), DFlong) # similar for an lm() call fit <- lm(value ~ factor1*factor2 + participant, DFlong) # what's aov telling us? summary(my.aov) # check SS residuals sum(residuals(fit)^2) # == 5945.668 # check they add up to the residuals from summary(my.aov) 2406.1 + 1744.1 + 1795.46 # == 5945.66 # all good so far, but how are the residuals in the aov calculated? my.aov$"participant:factor1"$residuals #clearly these are the ones used in the ANOVA: sum(my.aov$"participant:factor1"$residuals ^ 2) # this corresponds to the factor1 residuals here: summary(my.aov) # but they are different to the residuals reported from lm() residuals(fit) my.aov$"participant"$residuals my.aov$"participant:factor1"$residuals my.aov$"participant:factor1:factor2"$residuals