I have a question about the possibility of fitting a binomial-normal model with lmer. I explain my problem using notation used in "Linear mixed model implementation in lme4" by Prof. Bates (http://stat.ethz.ch/CRAN/doc/vignettes/lme4/Implementation.pdf). By binomial-normal, I mean a model that another term is added to Equation (29) (on page 28) of the paper, i.e. \eta=X\beta+Zb+\epsilon where \epsilon is N(0,\sigma_e). I thought that by modifying Z, \epsilon can be absorbed into Z. However, when I tried to test this on a simple simulated data set I received an error "Error in mer_finalize(ans, verbose) : q = > n = ". Basically, it seems that the basic assumption in lmer for GLMM models is that Z should be a thin matrix (more rows than columns). Naturally, this data-level normal error term can not be absorbed as another random effect since the total number of random effects exceeds the number of observations. Is there any other way around this problem? Am I doing something nonsense? I appreciate if Prof. Bates or anyone who used lmer for GLMM comments on this. Thanks, Ali
Problem with binomial-normal model in lmer
2 messages · nasi0009 at umn.edu, Douglas Bates
2 days later
On 22 Feb 2008 01:04:08 -0600, <nasi0009 at umn.edu> wrote:
I have a question about the possibility of fitting a binomial-normal model with lmer. I explain my problem using notation used in "Linear mixed model implementation in lme4" by Prof. Bates (http://stat.ethz.ch/CRAN/doc/vignettes/lme4/Implementation.pdf). By binomial-normal, I mean a model that another term is added to Equation (29) (on page 28) of the paper, i.e. \eta=X\beta+Zb+\epsilon where \epsilon is N(0,\sigma_e). I thought that by modifying Z, \epsilon can be absorbed into Z. However, when I tried to test this on a simple simulated data set I received an error "Error in mer_finalize(ans, verbose) : q = > n = ".
Did it really give that error message? The way I had intended the message to display is including the values of q and n. Looking at the code I think it should give the values.
Basically, it seems that the basic assumption in lmer for GLMM models is that Z should be a thin matrix (more rows than columns). Naturally, this data-level normal error term can not be absorbed as another random effect since the total number of random effects exceeds the number of observations. Is there any other way around this problem? Am I doing something nonsense?
The reason for checking if the dimension of the random effects vector exceed the number of observations is because the conditional modes of the random effects are determined via iteratively reweighted least squares. It happens that the least squares problem is a penalized least squares problem and a solution may exist even when q > n. You may want to try suppressing the check (near the beginning of the C function called "update_u" in the file lme4/src/lmer.c) and seeing if things still work for your example. If you aren't comfortable modifying the source code and rebuilding the package then please supply an example.
I appreciate if Prof. Bates or anyone who used lmer for GLMM comments on this. Thanks, Ali
_______________________________________________ R-sig-mixed-models at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models