Elizabeth Lawson
2005-Oct-19 15:27 UTC
[R] nlme Singularity in backsolve at level 0, block 1
Hi, I am hoping some one can help with this. I am using nlme to fit a random coefficients model. It ran for hours before returning Error: Singularity in backsolve at level 0, block 1 The model is> plavix.nlme<-nlme(PLX_NRX~loglike(PLX_NRX,PD4_42D,GAT_34D,VIS_42D,MSL_42D,SPE_ROL,XM2_DUM,THX_DUM,b0,b1,b2,b3,b4,b5,b6,b7,alpha),+ data=data, + fixed=list(b0 + b1+b2+b3+b4+b5+b6+b7+alpha~1), + random=b0+b1+b2+b3+b4+b5+b6+b7~1|menum, + + start=c(b0=0,b1=0,b2=0,b3=0,b4=0,b5=0,b6=0,b7=0,alpha=5) + ) Can anyone tell me what this error means and how I can run the model? Thanks, Elizabeth Lawson --------------------------------- [[alternative HTML version deleted]]
Spencer Graves
2005-Nov-05 19:42 UTC
[R] nlme Singularity in backsolve at level 0, block 1
RSiteSearch("Singularity in backsolve") produced 33 hits, the second of which was the following: http://finzi.psych.upenn.edu/R/Rhelp02a/archive/62691.html This reply from Peter Dalgaard dates 8 Oct. 2005 asks, Which version of R and NLME? R 2.2.0 ships with a version where the internal optimizer is changed to nlminb(). As I understand it, this was in response to reports where code that worked in S-PLUS refused to work in R." If you are using R 2.2.0 and the latest version of nlme, then it's possible (likely?) that your model is overparameterized, and can't be fit with nlme. Can you fit the model using, e.g., nls ignoring the random effects model, as suggested in ch. 8 of Pinheiro and Bates (2000) Mixed-Effects Models for S and S-Plus (Springer)? If no, it's virtually certain that nlme won't work, either. If I had trouble diagnosing the problem, I might recode it for optim(..., hessian=T), then look at the eigenvalues and vectors of the hessian to understand the deficiencies in the model. If nls works for you but not nlsList, there still might be hope, but it would be more difficult. If I had that problem and it were sufficiently important, I would step through nlme until I could figure out how to modify the code so it would continue, as does optim, and provide answers that would help me diagnose the singularity. (I'd also include a facility for providing a prior distribution that should eliminate the singularities.) Hope this helps. spencer graves Elizabeth Lawson wrote:> Hi, > > I am hoping some one can help with this. > > I am using nlme to fit a random coefficients model. It ran for hours before returning > > Error: Singularity in backsolve at level 0, block 1 > > The model is > >>plavix.nlme<-nlme(PLX_NRX~loglike(PLX_NRX,PD4_42D,GAT_34D,VIS_42D,MSL_42D,SPE_ROL,XM2_DUM,THX_DUM,b0,b1,b2,b3,b4,b5,b6,b7,alpha),> > + data=data, > + fixed=list(b0 + b1+b2+b3+b4+b5+b6+b7+alpha~1), > + random=b0+b1+b2+b3+b4+b5+b6+b7~1|menum, > + > + start=c(b0=0,b1=0,b2=0,b3=0,b4=0,b5=0,b6=0,b7=0,alpha=5) > + ) > > Can anyone tell me what this error means and how I can run the model? > > Thanks, > > Elizabeth Lawson > > > --------------------------------- > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html-- Spencer Graves, PhD Senior Development Engineer PDF Solutions, Inc. 333 West San Carlos Street Suite 700 San Jose, CA 95110, USA spencer.graves at pdf.com www.pdf.com <http://www.pdf.com> Tel: 408-938-4420 Fax: 408-280-7915