#BIBD , p168-170 tab.4.22 <- matrix(c(73,NA,73,75,74,75,75,NA,NA,67,68,72,71,72,NA,75),nc=4) tab.4.22.df <- data.frame(y=as.vector(tab.4.22), treat=factor(rep(1:4,4)), block=factor(rep(1:4,each=4))) # For testing treat effect, need SStrt(adj) aov.BIBD <-aov(y~treat+block+Error(block),tab.4.22.df) summary(aov.BIBD) #Table 4.24 p.170 # one can also ˇ§forceˇ¨ R to use the appropriate SS by using lm() with ordered # effect terms, e.g. anova(lm(y~block+treat,tab.4.22.df)) # For testing block effect, need SSblock(adj) summary(aov(y~treat+block+Error(treat),tab.4.22.df)) anova(lm(y~treat+block,tab.4.22.df)) require(lattice) xyplot(y~treat|block,tab.4.22.df, aspect="xy",xlab="Catalyst",ylab="Response", panel=function(x,y) { panel.xyplot(x,y) panel.lmline(x,y) })