[R-sig-ME] lme for split-plot

Douglas Bates bates at stat.wisc.edu
Wed Aug 4 20:55:13 CEST 2010


2010/7/27 Etienne Laliberté <etiennelaliberte at gmail.com>:
> I'm analyzing experimental data from a split-plot design, with two
> blocks, each block containing five whole plots, and each whole plot
> containing three subplots.
>
> The multilevel structure of the design dictates the following random
> structure (in the case of a random intercept model):
>
> lme(...., random = ~ 1 | block / wholeplot, ...)
>
> However, if, for a given model, the random effects end up being
> incredibly small, e.g.
>
> Random effects:
>  Formula: ~1 | block
>         (Intercept)
> StdDev: 4.639022e-06
>
>  Formula: ~1 | wholeplot %in% block
>         (Intercept)  Residual
> StdDev: 2.256742e-09 0.1911715
>
> Is it still better to leave them in the model, or should I exclude them
> and use gls() instead?

Because of the way that the estimation algorithm in the lme function
worked, you would never get zero for the estimated standard deviation
of the random effects.  These values could be regarded as "effectively
zero" relative to the residual variability.  You could check by
fitting the equivalent model using lmer from the lme4 package, which
does allow for variance component estimates to be zero.




More information about the R-sig-mixed-models mailing list