R-Squared的lmer模型适合

时间:2017-07-26 12:37:09

标签: r lme4

我有一个混合效果模型,我希望看到R²-和p值。我认为这是摘要()可以访问,但事实并非如此。或者至少我没有意识到这一点。

> summary(fit1.lme <- lmer(log(log(Amplification)) ~ poly(Voltage, 3) + (1 | Serial_number), data = bdf))
Linear mixed model fit by REML ['lmerMod']
Formula: log(log(Amplification)) ~ poly(Voltage, 3) + (1 | Serial_number)
   Data: bdf

REML criterion at convergence: -253237.6

Scaled residuals: 
     Min       1Q   Median       3Q      Max 
-14.8183  -0.4863  -0.0681   0.2941   9.3292 

Random effects:
 Groups        Name        Variance Std.Dev.
 Serial_number (Intercept) 0.008435 0.09184 
 Residual                  0.001985 0.04456 
Number of obs: 76914, groups:  Serial_number, 1270

Fixed effects:
                    Estimate Std. Error t value
(Intercept)         0.826745   0.002582     320
poly(Voltage, 3)1 286.978430   0.045248    6342
poly(Voltage, 3)2 -74.061993   0.045846   -1615
poly(Voltage, 3)3  39.605454   0.045505     870

Correlation of Fixed Effects:
            (Intr) p(V,3)1 p(V,3)2
ply(Vlt,3)1 0.001                 
ply(Vlt,3)2 0.002  0.021          
ply(Vlt,3)3 0.001  0.032   0.028  

2 个答案:

答案 0 :(得分:10)

对于R²,您可以使用r.squaredGLMM(fit1.lme)中的‘MuMIn    包。它将返回边际和条件R²。

对于p值,您可以使用summary lmerTest包来找到它们。

有关混合模型的p值的更多信息:http://mindingthebrain.blogspot.ch/2014/02/three-ways-to-get-parameter-specific-p.html

答案 1 :(得分:4)

我添加了一个非常小的演示,演示了臭氧层的分层建模,其中该建模承认每个月都有变化。您可以在下面找到比较。我只能在R squared包中找到MuMIn一词。

MuMIn软件包

> data(airquality)

> MuMIn::r.squaredGLMM(lme4::lmer(data=airquality, Ozone ~ 1 + (1|Month)))
     R2m       R2c
[1,]   0 0.2390012
> summary(lm(data=airquality, Ozone ~ 1 + (1|Month)))$r.squared
[1] 0

比较线性回归和混合效应模型(又称为层次回归模型)。

线性回归

> summary(lm(data=airquality, Ozone ~ 1 + (1|Month)))

Call:
lm(formula = Ozone ~ 1 + (1 | Month), data = airquality)

Residuals:
   Min     1Q Median     3Q    Max 
-41.13 -24.13 -10.63  21.12 125.87 

Coefficients: (1 not defined because of singularities)
              Estimate Std. Error t value Pr(>|t|)    
(Intercept)     42.129      3.063   13.76   <2e-16 ***
1 | MonthTRUE       NA         NA      NA       NA    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 32.99 on 115 degrees of freedom
  (37 observations deleted due to missingness)

lmer4

> summary(lme4::lmer(data=airquality, Ozone ~ 1 + (1|Month)))
Linear mixed model fit by REML ['lmerMod']
Formula: Ozone ~ 1 + (1 | Month)
   Data: airquality

REML criterion at convergence: 1116.5

Scaled residuals: 
    Min      1Q  Median      3Q     Max 
-1.7084 -0.6269 -0.2669  0.4121  3.7507 

Random effects:
 Groups   Name        Variance Std.Dev.
 Month    (Intercept) 270.6    16.45   
 Residual             861.6    29.35   
Number of obs: 116, groups:  Month, 5

Fixed effects:
            Estimate Std. Error t value
(Intercept)   41.093      7.922   5.187

lmerTest

library(lmerTest)

> lmerTest::lmer(data=airquality, Ozone ~ 1 + (1|Month))
Linear mixed model fit by REML ['lmerModLmerTest']
Formula: Ozone ~ 1 + (1 | Month)
   Data: airquality
REML criterion at convergence: 1116.544
Random effects:
 Groups   Name        Std.Dev.
 Month    (Intercept) 16.45   
 Residual             29.35   
Number of obs: 116, groups:  Month, 5
Fixed Effects:
(Intercept)  
      41.09  
> summary(lmerTest::lmer(data=airquality, Ozone ~ 1 + (1|Month)))
Linear mixed model fit by REML. t-tests use Satterthwaite's method ['lmerModLmerTest']
Formula: Ozone ~ 1 + (1 | Month)
   Data: airquality

REML criterion at convergence: 1116.5

Scaled residuals: 
    Min      1Q  Median      3Q     Max 
-1.7084 -0.6269 -0.2669  0.4121  3.7507 

Random effects:
 Groups   Name        Variance Std.Dev.
 Month    (Intercept) 270.6    16.45   
 Residual             861.6    29.35   
Number of obs: 116, groups:  Month, 5

Fixed effects:
            Estimate Std. Error     df t value Pr(>|t|)   
(Intercept)   41.093      7.922  4.096   5.187  0.00616 **
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1