Linear Mixed-Effects Models using 'Eigen' and S4

Fit linear and generalized linear mixed-effects models. The models and their components are represented using S4 classes and methods. The core computational algorithms are implemented using the 'Eigen' C++ library for numerical linear algebra and 'RcppEigen' "glue".

  • Release 1.1-8 is on CRAN now. There are no major user-visible changes.
    • We have fixed some bugs in predict, simulate, and refit.
    • Convergence and positive-definite-Hessian warnings are still overly conservative for large (>10^4 rows) data sets, but we are holding off on changing anything until we really understand the problem; see help("convergence").
    • The deviance computation has changed for GLMMs; see "Deviance and log-likelihood of GLMMs" in merMod-class.Rd
  • Otherwise, see the NEWS file (or news(Version=="1.1.8",package="lme4")).
  • Efficient for large data sets, using algorithms from the Eigen linear algebra package via the RcppEigen interface layer.
  • Allows arbitrarily many nested and crossed random effects.
  • Fits generalized linear mixed models (GLMMs) and nonlinear mixed models (NLMMs) via Laplace approximation or adaptive Gauss-Hermite quadrature; GLMMs allow user-defined families and link functions.
  • Incorporates likelihood profiling and parametric bootstrapping.
  • From CRAN (stable release 1.0.+)
  • Development version from Github:
library("devtools"); install_github("lme4/lme4",dependencies=TRUE)

(This requires devtools >= 1.6.1, and installs the "master" (development) branch.) This approach builds the package from source, i.e. make and compilers must be installed on your system -- see the R FAQ for your operating system; you may also need to install dependencies manually. Specify build_vignettes=FALSE if you have trouble because your system is missing some of the LaTeX/texi2dvi tools.

  • Usually up-to-date development binaries from lme4 r-forge repository:

(these source and binary versions are updated manually, so may be out of date; if you believe they are, please contact the maintainers).

It is possible to install (but not easily to check) lme4 at least as recently as 1.1-7.

  • make sure you have exactly these package versions: Rcpp 0.10.5, RcppEigen
  • for installation, use --no-inst; this is necessary in order to prevent R from getting hung up by the knitr-based vignettes
  • running R CMD check is difficult, but possible if you hand-copy the contents of the inst directory into the installed package directory ...
  • lme4.0 is a maintained version of lme4 back compatible to CRAN versions of lme4 0.99xy, mainly for the purpose of reproducible research and data analysis which was done with 0.99xy versions of lme4.
  • there have been some reports of problems with lme4.0 on R version 3.1; if someone has a specific reproducible example they'd like to donate, please contact the maintainers.
  • Notably, lme4.0 features getME(<mod>, "..") which is compatible (as much as sensibly possible) with the current lme4's version of getME().
  • You can use the convert_old_lme4() function to take a fitted object created with lme4 <1.0 and convert it for use with lme4.0.
  • It currently resides on R-forge, and you should be able to install it with

(if the binary versions are out of date or unavailable for your system, please contact the maintainers).


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.1-13 by Ben Bolker, 6 days ago

Report a bug at

Browse source code at

Authors: Douglas Bates [aut], Martin Maechler [aut], Ben Bolker [aut, cre], Steven Walker [aut], Rune Haubo Bojesen Christensen [ctb], Henrik Singmann [ctb], Bin Dai [ctb], Gabor Grothendieck [ctb], Peter Green [ctb]

Documentation:   PDF Manual  

Task views: Bayesian Inference, Econometrics, Analysis of Ecological and Environmental Data, Official Statistics & Survey Methodology, Psychometric Models and Methods, Statistics for the Social Sciences, Handling and Analyzing Spatio-Temporal Data

GPL (>= 2) license

Imports graphics, grid, splines, utils, parallel, MASS, lattice, nlme, minqa, nloptr

Depends on Matrix, methods, stats

Suggests knitr, boot, PKPDmodels, MEMSS, testthat, ggplot2, mlmRev, optimx, gamm4, pbkrtest, HSAUR2, numDeriv

Linking to Rcpp, RcppEigen

Imported by ARTool, CADStat, DClusterm, DHARMa, HeritSeq, IMTest, LMERConvenienceFunctions, LSAmitR, MDMR, MLID, MXM, MixMAP, MultiRR, PBImisc, R2STATS, REndo, RLRsim, RRreg, RVAideMemoire, RVFam, SPreFuGED, SensMixed, SoyNAM, StroupGLMM, Surrogate, TcGSA, VCA, VetResearchLMM, blmeco, clickR, climwin, clusterPower, cpr, eefAnalytics, effects, ez, faraway, fullfact, glmmTMB, glmmsr, healthcareai, hmi, inferference, joineRML, lmSupport, lmem.gwaser, lmem.qtler, mbest, mediation, merDeriv, metamisc, metaplus, miceadds, mixlm, mlVAR, multiDimBio, neuropsychology, omics, pamm, piecewiseSEM, powerbydesign, refund, refund.shiny, reghelper, reproducer, rockchalk, rpql, rptR, rstanarm, sjPlot, sjstats, spacom, squid, standardize, surrosurv, tnam, warpMix.

Depended on by ArfimaMLM, BBRecapture, Bayesthresh, BradleyTerry2, CLME, GHap, GLMMRR, GWAF, JAGUAR, JointModel, MEMSS, Metatron, MixRF, MultisiteMediation, afex, agRee, aods3, arm, bapred, blme, cAIC4, carcass, difR, fishmethods, gamm4, gtheory, iccbeta, influence.ME, lmerTest, longpower, macc, marked, merTools, mixAK, mlmRev, mlma, nonrandom, pbkrtest, pedigreemm, prLogistic, predictmeans, robustlmm, simr.

Suggested by AICcmodavg, ANOM, AzureML, BIFIEsurvey, BayesFactor, DAAG, DySeq, Epi, HLMdiag, HSAUR, HSAUR2, HSAUR3, KFAS, MESS, MethComp, MuMIn, NAM, NanoStringNorm, OpenMx, R2admb, RcmdrPlugin.NMBU, SASmixed, TripleR, agridat, aod, benchmark, broom, car, catdata, dlnm, doBy, expp, eyetrackingR, flexmix, gamair, glmulti, gmodels, hamlet, hnp, irtrees, kulife, kyotil, languageR, lava, likelihoodAsy, lmeresampler, lsmeans, lucid, meta, metafor, mice, mitml, multcomp, mztwinreg, ordinal, pan, pez, phia, phmm, psych, purge, r2glmm, samplingDataCRT, slim, spaMM, texreg.

Enhanced by memisc, papeR, prediction, stargazer.

See at CRAN