Singular convergence in lmer
Dear Thierry, Thanks again. I think I see the misunderstanding. There is only one measurement of growth rate for each of the 10 fish available for each site and date. All of the 800 fish are different. Fish 1 from site 'a' time 0 is not the same as fish 1 from site 'b' time 0, or site 'a' time 15. Therefore, fish are essentially replicate growth estimates for each site and date. Apologies that this wasn't clear in my example data. Consider instead: Fish<-as.factor(seq(1,800)). Thank you for your thoughts about the model complexity- this is probably why M1 converged to singularity. Thanks also for your thoughts about whether year and site should be random effects or not. My primary interest is to know whether there is variation in the slope and intercept of the growth rate - day relationship and whether this variation is associated with a persistent site or year effect. I guess your reasoning still applies even though I'm more interested in model comparison rather than direct estimates of year and site variance I really appreciate your advice. Best regards Ben -----Original Message----- From: ONKELINX, Thierry [mailto:Thierry.ONKELINX at inbo.be] Sent: Monday, October 03, 2011 9:31 AM To: Benjamin J. Ciotti; r-sig-mixed-models at r-project.org Subject: RE: [R-sig-ME] Singular convergence in lmer Dear Benjamin, It is not clear to me how your M1 model will capture the effect of the fish, unless via the combined effects of year, site, ... That is IMHO overly complex. If you have only a few levels, you can run into numerical problems. Therefore I avoid using variables with a low number of levels as random effect. If they are important, then I add them as fixed effects. I prefer 2 or 3 parameter estimates of fixed effects instead of 1 dodgy variance estimate. Note that the overall difference in degrees of freedom is small. 6 or 7 levels is doable, but still rather low. Maybe you should use only the interaction between year and site as random effects in which you can nest (or cross?) the effect of the fish. Best regards, Thierry
-----Oorspronkelijk bericht----- Van: Benjamin J. Ciotti [mailto:ciotti at UDel.Edu] Verzonden: maandag 3 oktober 2011 14:47 Aan: ONKELINX, Thierry; r-sig-mixed-models at r-project.org Onderwerp: RE: [R-sig-ME] Singular convergence in lmer Dear Thierry, Thank you for your response. If you look carefully at the data structure
and M1,
fish is in fact a random effect (residual error variance) in the original
model. I
considered including year as a fixed effect for the reason you mentioned,
but
others have suggested that the number of levels shouldn't influence
whether a
factor is fixed or random. Maybe I should reconsider? Site actually has 7 levels in the 'real' dataset - enough to estimate
variance
according to Zuur et al.'s criteria. Thanks again for your input. Ben -----Original Message----- From: ONKELINX, Thierry [mailto:Thierry.ONKELINX at inbo.be] Sent: Monday, October 03, 2011 5:52 AM To: Benjamin J. Ciotti; r-sig-mixed-models at r-project.org Subject: RE: [R-sig-ME] Singular convergence in lmer Dear Benjamin, I think you will need to do some reading on mixed models. I would suggest
Zuur
et al (2009)
@BOOK{
title = {Mixed Effects Models and Extensions in Ecology with R},
publisher = {Springer New York},
year = {2009},
author = {Zuur, Alain F. and Ieno, Elena N. and Walker, Neil J. and
Saveliev,
Anatoly A. and Smith, Graham M.},
doi = {10.1007/978-0-387-87458-6},
}
I would expect to see fish as a random effect in your model. Further you
have
too few levels of year and site to get a reliable estimate of the
variance. Hence
a more sensible model would be something like: lmer(G~ Day * Year * Site + (1|Fish),REML=TRUE,data=GData) Best regards, Thierry
-----Oorspronkelijk bericht----- Van: r-sig-mixed-models-bounces at r-project.org [mailto:r-sig-mixed-models- bounces at r-project.org] Namens Benjamin J. Ciotti Verzonden: maandag 3 oktober 2011 1:02 Aan: r-sig-mixed-models at r-project.org Onderwerp: [R-sig-ME] Singular convergence in lmer #Dear All, #I have measured growth rate (G, response variable) in 10 individual fish (Fish) on 5 dates (Days, fixed covariate) at 4 sites (Site) in each of 2
years (Year).
#An example data set, using random numbers for the response, is GData,
as
follows:
set.seed(14)
Year<-as.factor(sort(rep(c(2005,2007),400)))
Site<-as.factor(rep(sort(rep(c("a","b","c","d"),50)),4))
Year.Site<-as.factor(paste(Year,Site,sep="."))
Day<-as.numeric(rep(sort(rep(c(1,15,30,45,60),10)),16))
Fish<-as.factor(rep(seq(1,10),80))
G<-rnorm(800,0.05,0.025)
GData<-data.frame(Year,Site,Year.Site,Day,Fish,G)
#I am modelling the temporal trend in growth rate as a linear function
of
Day,
the slope and intercept of which can vary as a random function of Year,
Site and
Year.Site. library(lme4) M1<- lmer(G~Day+(1|Year)+(1|Site)+(0+Day|Year)+(1|Year.Site)+(0+Day|Site)+( 0+ Day|Year.Site),REML=TRUE,data=GData) #You will note that there is singular convergence (with this, but not all,
random
number seeds). #Does this necessarily mean that there is a fundamental flaw in the model design, or does it just mean that with this data set, a simpler model is
necessary?
#In the real data set, all random terms except Year.Site and the
interaction
between Day and Year.Site can be dropped without substantial changes in
AIC.
#I therefore conclude that the following model is sufficient to describe
the
spatial and temporal growth variation: M2<-lmer(G~Day+(1|Year.Site)+(0+Day|Year.Site),REML=TRUE,data=GData) #My question is whether the initially model is fundamentally flawed, or
whether
it just needs to be simplified? #For example, is it valid to compare the full model with simpler models,
even
though it converged to singularity? #Any advice would be greatly appreciated. Benjamin J. Ciotti University of Delaware [[alternative HTML version deleted]]
_______________________________________________ R-sig-mixed-models at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models