# NOT RUN {
data(kempton.slatehall)
dat <- kempton.slatehall
dat <- transform(dat, xf=factor(col), yf=factor(row))
desplot(yield ~ col * row, dat, num=gen, out1=rep,
main="kempton.slatehall")
# Incomplete block model of Gilmour et al 1995
if(require(lme4) & require(lucid)){
m1 <- lmer(yield ~ gen + (1|rep) + (1|rep:yf) + (1|rep:xf), data=dat)
vc(m1)
## groups name variance stddev
## rep:xf (Intercept) 14810 121.7
## rep:yf (Intercept) 15600 124.9
## rep (Intercept) 4262 65.29
## Residual 8062 89.79
}
# }
# NOT RUN {
# Incomplete block model of Gilmour et al 1995
require(asreml)
m2 <- asreml(yield ~ gen, random = ~ rep/(xf+yf), data=dat)
vc(m2)
## effect component std.error z.ratio constr
## rep!rep.var 4262 6890 0.62 pos
## rep:xf!rep.var 14810 4865 3 pos
## rep:yf!rep.var 15600 5091 3.1 pos
## R!variance 8062 1340 6 pos
# Table 4
predict(m2, classify="gen")$predictions$pvals
# }
Run the code above in your browser using DataLab