[R] Error messages using LMER

Shige Song shigesong at gmail.com
Thu Aug 18 19:31:27 CEST 2005


Dear Professor Bates,

Here is output R 2.1.1 produced with "control = list(EMverbose = TRUE,
msVerbose = TRUE)". I am getting the new devel version and see what
will hapen there:

--------------------------------------------------------------------------------
 EM iterations
 0 85289.766 ( 5407.13:  0.0815) ( 26134.4: 0.00387)
 1 84544.322 ( 333.732:   0.137) ( 1462.32: 0.00934)
 2 84515.108 ( 129.506:  0.0270) ( 446.306: 0.00481)
 3 84514.519 ( 115.592: 0.00355) ( 328.637: 0.00103)
 4 84514.505 ( 113.981:0.000505) ( 311.160:0.000165)
 5 84514.505 ( 113.755:7.45e-005) ( 308.524:2.50e-005)
 6 84514.505 ( 113.722:1.11e-005) ( 308.128:3.77e-006)
 7 84514.505 ( 113.717:1.66e-006) ( 308.068:5.66e-007)
 8 84514.505 ( 113.716:2.50e-007) ( 308.059:8.49e-008)
 9 84514.505 ( 113.716:3.74e-008) ( 308.058:1.27e-008)
 10 84514.505 ( 113.716:5.62e-009) ( 308.058:1.91e-009)
 11 84514.505 ( 113.716:8.43e-010) ( 308.058:2.87e-010)
 12 84514.505 ( 113.716:1.27e-010) ( 308.058:4.31e-011)
 13 84514.505 ( 113.716:1.90e-011) ( 308.057:6.47e-012)
 14 84514.505 ( 113.716:2.86e-012) ( 308.057:9.73e-013)
 15 84514.505 ( 113.716:4.25e-013) ( 308.057:1.44e-013)
iter    0 value 84514.505044
final  value 84514.505044
converged
 EM iterations
 0 83740.342 ( 113.716: -0.0164) ( 308.057:0.000596)
 1 83740.273 ( 121.512:-0.00121) ( 298.914:-3.24e-005)
 2 83740.272 ( 122.131:-0.000111) ( 299.397:-1.24e-005)
iter    0 value 83740.272232
final  value 83740.272232
converged
 EM iterations
 0 84011.550 ( 122.204:-0.00461) ( 299.576:-0.000256)
 1 84011.543 ( 124.624:-0.000459) ( 303.453:-6.41e-005)
 2 84011.543 ( 124.870:-5.42e-005) ( 304.440:-1.13e-005)
iter    0 value 84011.543350
final  value 84011.543350
converged
 EM iterations
 0 84018.592 ( 124.915:-6.44e-005) ( 304.548:-1.22e-005)
 1 84018.592 ( 124.949:-8.29e-006) ( 304.737:-1.99e-006)
 2 84018.592 ( 124.954:-1.15e-006) ( 304.768:-3.08e-007)
iter    0 value 84018.591624
final  value 84018.591624
converged
 EM iterations
 0 84018.612 ( 124.955:3.40e-007) ( 304.770:-1.98e-007)
 1 84018.612 ( 124.955:-9.98e-009) ( 304.773:-2.23e-008)
 2 84018.612 ( 124.955:-5.47e-009) ( 304.774:-2.86e-009)
iter    0 value 84018.611512
final  value 84018.611512
converged
Error in fn(par, ...) : Unable to invert singular factor of downdated X'X
In addition: Warning message:
Leading minor of size 8 of downdated X'X is indefinite
--------------------------------------------------------------------------------

Thanks!

Shige

On 8/18/05, Douglas Bates <dmbates at gmail.com> wrote:
> On 8/18/05, Shige Song <shigesong at gmail.com> wrote:
> > Dear All,
> >
> > After playing with lmer for couple of days, I have to say that I am
> > amazed! I've been using quite some multilevel/mixed modeling packages,
> > lme4 is a strong candidate for the overall winner, especially for
> > multilevel generzlized linear models.
> >
> > Now go back to my two-level poisson model with cross-classified model.
> > I've been testing various different model specificatios for the past
> > couple of days. Here are the models I tried:
> >
> > 1) Two level random intercept model with level-1 covariates only
> > m1 <- lmer(.D ~ offset(log(.Y)) + (1|provn) +(1|bcohort) + x1 + x2 ,
> > data, poisson, method="Laplace")
> >
> > 2) Two-level random intercept model with both level-1 and level-2
> > covariates, but no cross-level interactions:
> > m2 <- lmer(.D ~ offset(log(.Y)) + (1|provn) +(1|bcohort) + x1 + x2 +
> > z1 + z2, data, poisson, method="Laplace")
> >
> > 3) Two-level random intercept with cross-level interaction
> > m3 <- lmer(.D ~ offset(log(.Y)) + (1|provn) +(1|bcohort) + x1 + x2 +
> > z1 + z2 + x1:z1 + x2:z2, data, poisson, method="Laplace")
> >
> > Both model 1 and 2 run fine. For model 3, I got error message:
> > ----------------------------------
> > Error in fn(par, ...) : Unable to invert singular factor of downdated X'X
> > In addition: Warning messages:
> > 1: optim or nlminb returned message ERROR: ABNORMAL_TERMINATION_IN_LNSRCH
> >  in: LMEopt(x = mer, value = cv)
> > 2: Leading minor of size 1 of downdated X'X is indefinite
> > ----------------------------------
> >
> > What is going on here? Any workarounds? Thanks!
> 
> The first thing I would try is set the EMverbose and msVerbose flags
> in the control list to see what occurs within the optimization.  That
> is append the argument
> 
> control = list(EMverbose = TRUE, msVerbose = TRUE)
> 
> to your call to lmer().  You may also want to try the call in a
> recently compiled R-devel, which will be released as R-2.2.0 in
> October.  You will notice that the first warning message reads "optim
> or nlminb". In R-2.1.1 lmer uses optim for the optimization.  Starting
> with R-2.2.0 the default is to use nlminb.
> 
> Test compilations of R-devel for Windows are available from CRAN.
>




More information about the R-help mailing list