if (FALSE) {
library(agridat)
data(ryder.groundnut)
dat <- ryder.groundnut
# RCB model
m1 <- lm(dry~block+gen,dat)
dat$res1 <- resid(m1)
# Table 3 of Ryder. Scale up from kg/plot to kg/ha
round(dat$res1 * 596.6,0)
# Visually. Note largest positive/negative residuals are adjacent
libs(desplot)
desplot(dat, res1 ~ col + row,
text=gen, # aspect unknown
main="ryder.groundnut - residuals")
libs(desplot)
# Swap the dry yields for two plots and re-analyze
dat[dat$block=="B3" & dat$gen=="A", "dry"] <- 2.8
dat[dat$block=="B3" & dat$gen=="B", "dry"] <- 1.4
m2 <- lm(dry~block+gen, dat)
dat$res2 <- resid(m2)
desplot(dat, res2 ~ col+row,
# aspect unknown
text=gen, main="ryder.groundnut")
}
Run the code above in your browser using DataLab