Skip to content

CHOLMOD warning with GLMM

2 messages · Renwick, A. R., Douglas Bates

#
Dear All
I am trying to model the burden of fleas on field voles using a GLMM with poisson error and a nested random effect.
The random effect is (1|Farm/Margin) I have 7 farms and 14 margins (2 margins per farm) and have sampled each margin 4 times.
However, I continually get an error message even when I simplify the model.  The model I am trying to run is:


bin<-lmer(fleaburden ~ sex + width + month + vole abundance + alternative host abunandance +(1|Farm/Margin), family=poisson, data=flea, REML=FALSE)


The error message:

CHOLMOD warning: ?e
Error in mer_finalize(ans) :
  Cholmod error `not positive definite' at file:../Cholesky/t_cholmod_rowfac.c, line 432

Any help in understanding this error would be much appreciated.

Thanks,
Anna

Anna Renwick
Institute of Biological & Environment Sciences
University of Aberdeen
Zoology Building
Tillydrone Avenue
Aberdeen
AB24 2TZ


The University of Aberdeen is a charity registered in Scotland, No SC013683.
#
2009/2/10 Renwick, A. R. <a.renwick at abdn.ac.uk>:
Do you really have variables named 'vole abundance' and 'alternative
host abundance' or did you edit that part of the transcript?  I would
imagine you would get a syntax error reported from something like that
because of the embedded blanks without appropriate quoting.
Usually I suggest using verbose = TRUE to begin looking at the source
of the problem.  The error message is unexpected.  I would have
guessed that it couldn't happen in this calculation.  It is from the
Cholesky factorization of a matrix derived from the model matrix for
the random effects and it indicates that the matrix is singular.  As I
said, I expected that the way the calculation is done that matrix
never could be singular.

Would you be willing to share your data with me (you can make it
anonymous if you wish - I'm not sure if privacy considerations extend
to voles but I am willing to have their real names removed, I only
need the numbers) so that I can check in more detail what is
happening?