web-dev-qa-db-ja.com

lmerモデルフィットのR-Squared

混合効果モデルがあり、R²値とp値を確認したいと思います。これはsummary()でアクセスできると思いましたが、そうではありません。または、少なくとも私はそれを理解していません。

> 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  
6
Ben

R²の場合、_‘MuMIn_パッケージのr.squaredGLMM(fit1.lme)を使用できます。限界R²と条件付きR²を返します。

P値については、summarylmerTestパッケージと共に使用することにより、それらを見つけることができます。

混合モデルのp値の詳細: http://mindingthebrain.blogspot.ch/2014/02/three-ways-to-get-parameter-specific-p.html

14
abichat

オゾン層の階層的モデリングを備えた非常に小さなデモを追加します。モデリングでは、月ごとに変化することが認められています。以下の比較表をご覧ください。 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
5
hhh