extract specific values from lmer summary
On 14-05-02 03:53 PM, Laura Prugh wrote:
Hi Ben, I am trying to save specific outputs from the lmer summary, and I was hoping you might be able to tell me the code to do this. I'm running a random effects model with only the intercept as a fixed effect. I want to extract the fixed effect intercept estimate and the variance (or standard deviation) of the random effect. I seem to have figured out how to get the fixed effect (model at fixedef) but have had no luck getting the random effect. I guessed a variety of things and model at ranef returned something, but it didn't match anything in the summary output. Here is the output of my model, and I would like to extract and save the st dev of the random effect (0.21287). Any help would be greatly appreciated. If you generally know of a resource for figuring out the syntax to extract specific values from summary outputs, that would be great because this is a recurring problem for me! By the way, I plan to have as many of my students at possible attend the workshop you're offering at Chena HS near Fairbanks in August. cheers, Laura
This is really more of an r-sig-mixed-models at r-project.org question: I'm forwarding the answer there. methods(class="merMod") is a good way to check the available accessor methods for (g)lmer fits, as is ?getME (an lme4-specific function for getting at lower-level components of a (g)lmer fit in a safe/stable way).
lmer.sheep <- lmer(y ~ (1|year),family=binomial, data = coy,
+ control=list(msVerbose=F,maxIter=1000,maxFN=3000))
lmer.sheep
Generalized linear mixed model fit by the Laplace approximation Formula: y ~ (1 | year) Data: coy
Fixed effects: Estimate Std. Error z value Pr(>|z|) (Intercept) -0.8083 0.2168 -3.729 0.000192 *** --- Signif. codes: 0 ?***? 0.001 ?**? 0.01 ?*? 0.05 ?.? 0.1 ? ? 1
mn <- lmer.sheep at fixef mn
(Intercept) -0.8083453
lmer.sheep at ranef
[1] 0.09490052 0.09490052 0.03168227 -0.01783168 -0.14832171 -0.04832885
A reproducible example would be slightly better, but here I believe you're looking for fixef(lmer.sheep)[1] ## intercept sqrt(unlist(VarCorr(lmer.sheep)) ## std dev of year effect It looks like you're still using an older version of lme4: I believe the incantations I gave above are backward compatible, but there are a fair number of convenience methods in the newer (>1.0) version that might be helpful (e.g. as.data.frame(VarCorr(lmer.sheep))) Ben Bolker