[R] unexpected "false convergence"

Spencer Graves spencer.graves at pdf.com
Wed Jan 4 05:40:56 CET 2006


	  I replicated your 'false convergence' using R 2.2.0:
 > sessionInfo()
R version 2.2.0, 2005-10-06, i386-pc-mingw32

attached base packages:
[1] "methods"   "stats"     "graphics"  "grDevices" "utils"     "datasets"
[7] "base"

other attached packages:
     nlme     MASS
"3.1-66" "7.2-23"

	  Since the error message said, "Error in lme.formula", I listed the 
code for "lme.formula" and traced it using "debug(lme.formula)",  The 
function "glmmPQL" calls "lme.formula" repeatedly.  The function 
"lme.formula" in turn calls "nlminb" when it's available, though it used 
to call "optim".  The fifth time "lme.formula" was called, "nlminb" 
returned the error message "false convergence (8)".

	  Under R 2.2, "nlminb" is part of the "base" package.  I'm not 
certain, but I don't think it was available in "base" under R 2.1.1.

	  I think this explains the problem, but not how to fix it.  I tried 
modifying the code fo "lme.formula" to force it to call "optim", but 
this generated a different error.  I am therefore copying Professors 
Bates & Ripley in case one of them might want to look at this.

	  hope this helps.
	  spencer graves

Jack Tanner wrote:
> I've come into some code that produces different results under R 2.1.1 and R 
> 2.2.1. I'm really unfamiliar with the libraries in question (MASS and nlme), 
> so I don't know if this is a bug in my code, or a regression in R. If it's a 
> bug on my end, I'd appreciate any advice on potential causes and relevant 
> documentation.
> 
> The code:
> 
> score<-c(1,8,1,3,4,4,2,5,3,6,0,3,1,5,0,5,1,11,1,2,4,5,2,4,1,6,1,2,8,16,5,16,3,15,3,12,4,9,2,4,1,8,2,6,4,11,2,9,3,17,2,6)
> id<-rep(1:13,rep(4,13))
> test<-gl(2,1,52,labels=c("pre","post"))
> coder<-gl(2,2,52,labels=c("two","three"))
> il<-data.frame(id,score,test,coder)
> attach(il)
> cs1<-corSymm(value=c(.396,.786,.718,.639,.665,.849),form=~1|id)
> cs1<-Initialize(cs1,data=il)
> run<-glmmPQL(score~test+coder, 
> random=~1|id,family=poisson,data=il,correlation=cs1)
> 
> The output under R 2.2.1, which leaves the run object (last line of the 
> code) undefined:
> 
> iteration 1
> iteration 2
> iteration 3
> iteration 4
> Error in lme.formula(fixed = zz ~ test + coder, random = ~1 | id, data = 
> list( :
>         false convergence (8)
> 
> Under R 2.1.1, I get exactly 4 iterations as well, but no "false 
> convergence" message, and run is defined.
> 
> ______________________________________________
> 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




More information about the R-help mailing list