[R] Extract random effect variances from lmer (lme4) model
Ista Zahn
istazahn at gmail.com
Tue Dec 9 04:28:32 CET 2014
Perhaps
as.data.frame(VarCorr(pcrpred))
?
Best,
Ista
On Mon, Dec 8, 2014 at 4:15 PM, GMAIL <rosita21 at gmail.com> wrote:
> I have a mer object that has fixed and random effects (lmer).
>
> How do I extract the variance or standard deviation estimates for the random and fixed effects? Here is a simplified version of my question:
>
>
> pcrpred <- lmer(PCR ~ (1|TIME) + (1|ID), data = mydataPCRlong)
>
> pcrpred
>
>
> This gives a long output - not too long in this case. Anyway, how do I explicitly select the variance? I can I extract part of the output? I want the values themselves.
>
>> pcrpred
> Linear mixed model fit by REML ['merModLmerTest']
> Formula: PCR ~ (1 | TIME) + (1 | ID)
> Data: mydataPCRlong
> REML criterion at convergence: 127761.9
> Random effects:
> Groups Name Std.Dev.
> ID (Intercept) 22031
> TIME (Intercept) 15182
> Residual 33635
> Number of obs: 5346, groups: ID, 891; TIME, 6
> Fixed Effects:
> (Intercept)
> 26791
>
> I also tried:
> summary(pcrpred)
>
> Linear mixed model fit by REML t-tests use Satterthwaite approximations to degrees of
> freedom [merModLmerTest]
> Formula: PCR ~ (1 | TIME) + (1 | ID)
> Data: mydataPCRlong
>
> REML criterion at convergence: 127761.9
>
> Scaled residuals:
> Min 1Q Median 3Q Max
> -2.6822 -0.5974 -0.2283 0.5681 2.8165
>
> Random effects:
> Groups Name Variance Std.Dev.
> ID (Intercept) 4.854e+08 22031
> TIME (Intercept) 2.305e+08 15182
> Residual 1.131e+09 33635
> Number of obs: 5346, groups: ID, 891; TIME, 6
>
> Fixed effects:
> Estimate Std. Error df t value Pr(>|t|)
> (Intercept) 26790.662 6258.611 5.142 4.281 0.00738 **
> ---
> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>> print(VarCorr(pcrpred),comp=c("Variance","Std.Dev."))
> Groups Name Variance Std.Dev.
> ID (Intercept) 485373501 22031
> TIME (Intercept) 230483110 15182
> Residual 1131284840 33635
>
>
> When I do:
>
> print(VarCorr(pcrpred),comp=c(“Variance”,”Std.Dev.”))
>
> I get:
>
> Groups Name Variance Std.Dev.
> ID (Intercept) 485373501 22031
> TIME (Intercept) 230483110 15182
> Residual 1131284840 33635
>
> And I searched in forums, but another command I found was:
> summary(pcrpred)@REmat
> however I get:
>
> Error: trying to get slot “REmat" from an object (class "summary.merMod") that is not an S4 object
>
> Can anyone
>
>
> I have taken long looks at
>
> str(study)
> and there's nothing there! Also checked any extractor functions in the lme4 package to no avail. Please help!
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
More information about the R-help
mailing list