It looks like you need something like this. The data you attached didn't make it through the email system.
## you might need install.packages("HH") ## do this once library(HH) ## do this every time you start a new R session interaction2wt(y ~ Block + CO2 + temp + moisture) ## the rest is standard R from the stats package safe.aov <- aov(y ~ CO2*temp*moisture + Error(Block/CO2), data=safe) model.tables(safe.aov) anova(safe.aov) Rich [[alternative HTML version deleted]] ______________________________________________ R-help@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.