lmerTest和lme4之间的差异结果

时间:2015-04-22 18:03:27

标签: regression lme4 mixed-models

我有一定的值作为DV(因变量),我对BMI对DV的影响很感兴趣。我对DV有多个观察结果(即每个受试者反应五次),所以我想要一个混合模型(对于每个ID的重复测量)。

所以我做的是:

  1. 使用Bodo Winters教程 - 计算复杂模型和简单模型之间的差异。

  2. 使用lmerTest

  3. 现在,结果非常不同,我无法弄清楚原因。

    1. m1 <- lmer(value  ~ BMI + Dummy + (1|ID), data=data)
      m2 <- lmer( value ~ BMI + (1|ID), data=data)
      anova(m1, m2)
      
    2. 在这里,我的结果非常重要

      1. require(lmerTest)
        m3<-lmer(value ~ BMI  + (1|ID), data=data)
        anova(m3)
        
      2. 在这里,我的结果并不重要。对不起,我无法提供可重现的例子,这种差异只发生在BMI效应上,而不是我感兴趣的其他效果。所以现在我想知道:为什么 你有什么建议,我可能犯了错误吗?

        这是我得到的输出

        > m1 <- lmer(value ~ BMI + (1|ID), data=data, REML=FALSE)
        > m2 <- lmer(value ~ 1 + (1|ID), data=data, REML=FALSE)
        > anova(m1, m2)
        Data: data
        Models:
        ..1:value ~ 1 + (1 | ID)
        object: value ~ BMI + (1 | ID)
               Df    AIC    BIC  logLik deviance  Chisq Chi Df Pr(>Chisq)    
        ..1     3 2188.1 2201.0 -1091.1   2182.1                             
        object  4 2149.4 2166.6 -1070.7   2141.4 40.687      1  1.787e-10 ***
        ---
        Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
        

        anova(lmer(value ~ BMI + (1|ID), data=data, REML=FALSE))
        Analysis of Variance Table of type 3  with  Satterthwaite 
        approximation for degrees of freedom
             Sum Sq Mean Sq NumDF DenDF  F.value Pr(>F)
        BMI 0.17868 0.17868     1   110 0.059873 0.8072
        

2 个答案:

答案 0 :(得分:0)

在我看来,你正在考虑LR tets的错误模型。用于测试BMI:

m1&lt; - lmer(值~BMI +(1 | ID),数据=数据)

m2&lt; - lmer(值~1 +(1 | ID),数据=数据)

anova(m1,m2)

答案 1 :(得分:0)

我不能复制这个。使用一个非常相似的例子:

library("lme4")
m1 <- lmer(Reaction  ~ Days + (1|Subject), data=sleepstudy)
m2 <- update(m1, .~.-Days)
anova(m1,m2)
## refitting model(s) with ML (instead of REML)
## Data: sleepstudy
## Models:
## m2: Reaction ~ (1 | Subject)
## m1: Reaction ~ Days + (1 | Subject)
##    Df    AIC    BIC  logLik deviance  Chisq Chi Df Pr(>Chisq)    
## m2  3 1916.5 1926.1 -955.27   1910.5                             
## m1  4 1802.1 1814.8 -897.04   1794.1 116.46      1  < 2.2e-16 ***

现在使用lmerTest

library("lmerTest")
anova(lmer(Reaction  ~ Days + (1|Subject), data=sleepstudy,
           REML=FALSE))
## Analysis of Variance Table of type 3  with  Satterthwaite 
## approximation for degrees of freedom
##      Sum Sq Mean Sq NumDF DenDF F.value    Pr(>F)    
## Days 162703  162703     1   162  170.45 < 2.2e-16 ***

普通旧anova(refitML(m1))在这种情况下给出了类似的结果:

## Analysis of Variance Table
##      Df Sum Sq Mean Sq F value
## Days  1 162703  162703   170.45