Solved – Mixed effects model with random and nested effects in lmer

I want to run a linear mixed effects model with nested and random effects using lmer in R, but continue getting errors. Two questions: what is causing the errors and how can I fix my model to run the appropriate analyses? Thanks so much!

Experimental design: Four sites- each site has 2 plant species and 3 accessions for each plant species (6 accessions total). At each site, there are two treatments: plants given nitrogen enriched fertilizer and plants given nitrogen free fertilizer. I collected data on plant growth and root traits and log-transformed variables as needed. I also set Accession (coded 1 – 6), Site (coded 1 – 4), and SoilN treatment (coded 1 and 2) as factors. All response variables are continuous.

Data structure:

enter image description here

Model: I want to test the effects of treatment (SoilN), Species, and Accession on plant growth and root traits. I have been running two models- one for species and one for accession. I would like to test an interaction between species or accession and soil N, include site as a random effect, and nest accession within species. I wrote the following models:

lf  <- lmer(LogLeaf ~ SoilN * Species   + (1|Species/Accession) + (1|Site), data=a) lf2 <- lmer(LogLeaf ~ SoilN * Accession + (1|Species/Accession) + (1|Site), data=a) 

Output:

enter image description here

For the accession model (lf2), I get the following warnings:

> lf2 <- lmer(LogLeaf ~ SoilN * Accession + (1|Species/Accession) +       (1|Site), data = a)      Warning messages:      1: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv,  :      unable to evaluate scaled gradient      2: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv,  :      Model failed to converge: degenerate  Hessian with 1 negative eigenvalues  > summary(lf2)     Error in calculation of the Satterthwaite's approximation. The output of      lme4 package is returned     summary from lme4 is returned     some computational error has occurred in lmerTest  > anova(lf2) Error in calculation of the Satterthwaite's approximation.  The output of lme4 package is returned anova from lme4 is returned some computational error has occurred in lmerTest Analysis of Variance Table                 Df  Sum Sq Mean Sq  F value SoilN            1 13.4357 13.4357 121.8414 Accession        5  0.3728  0.0746   0.6761 SoilN:Accession  5  0.8892  0.1778   1.6127 Warning messages: 1: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv,  :   unable to evaluate scaled gradient 2: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv,  :   Model failed to converge: degenerate  Hessian with 1 negative eigenvalues 

Other notes:

  1. The model runs if I nest Accession within Species within Site, although I'm not sure that's a correct way to analyze the data.
  2. It also runs if I don't nest Accession within Species, but still include Site and Accession as random effects.
  3. I do have some zeros in my data set because some of the plant died. I added data to determine whether the zeros were causing the issue, but continued to get errors.

Please read the R GLMM FAQ: http://glmm.wikidot.com/faq especially the section on "should I treat factor xxx as fixed or random?" or the email thread: https://stat.ethz.ch/pipermail/r-sig-mixed-models/2010q2/003710.html

If I understand your data correctly, you have only 2 species, so estimating a random variance for species is problematic at best. You have 6 total accessions (3+3), which is about the minimum for 1 variance component.

Similar Posts:

Rate this post

Leave a Comment