nitrogen <- rep(1:4,each=6) block <- rep(1:2,each=3,times=4) years <- rep(seq(2,8,3),times=8) chlrfl <- c(3.8,5.3,5.9,3.9,5.4,4.3,5.2,5.6,5.4,6.0,6.1,6.2, 6.0,5.6,7.8,7.0,6.4,7.8,6.8,8.6,8.5,7.9,8.6,8.4) tg <- data.frame(nitrogen,block,years,chlrfl) attach(tg) nitrogen <- factor(nitrogen) block <- factor(block) years <- factor(years) turfg.mod1 <- aov(chlrfl ~ block + nitrogen + block:nitrogen + years + years:nitrogen) summary(turfg.mod1) turfg.mod2 <- aov(chlrfl ~ nitrogen*years + Error(block/nitrogen)) summary(turfg.mod2) library(lme4) turfg.mod3 <- lmer(chlrfl ~ nitrogen*years + (1|block/nitrogen)) summary(turfg.mod3) anova(turfg.mod3)