【问题标题】:How to obtain the p-values for each coefficient in a nested logit glmer model (using lme4)?如何获得嵌套 logit glmer 模型中每个系数的 p 值(使用 lme4)?
【发布时间】:2017-05-15 02:24:12
【问题描述】:

我正在运行以下代码:

library(lme4)
library(nlme)
nest.reg2 <- glmer(SS ~  (bd|cond), family = "binomial", 
    data = combined2)
coef(nest.reg2)
summary(nest.reg2) 

产生以下输出:

  • 系数
$cond    
          bd (Intercept)
LL -1.014698    1.286768   
no -3.053920    4.486349
SS -5.300883    8.011879
  • 总结
Generalized linear mixed model fit by maximum likelihood (Laplace
  Approximation) [glmerMod]
 Family: binomial  ( logit )
Formula: SS ~ (bd | cond)
   Data: combined2

     AIC      BIC   logLik deviance df.resid 
  1419.7   1439.7   -705.8   1411.7     1084 

Scaled residuals: 
    Min      1Q  Median      3Q     Max 
-8.0524 -0.8679 -0.4508  1.0735  2.2756 

Random effects:
 Groups Name        Variance Std.Dev. Corr 
 cond   (Intercept) 33.34    5.774         
        bd          13.54    3.680    -1.00
Number of obs: 1088, groups:  cond, 3

Fixed effects:
            Estimate Std. Error z value Pr(>|z|)  
(Intercept)  -0.3053     0.1312  -2.327     0.02 *

我的问题是如何测试该模型每个系数的显着性? Summary 函数似乎只提供截距的 p 值,而不是系数。

当我尝试anova(nest.reg2) 时,我什么也得不到,只是:

Analysis of Variance Table
     Df Sum Sq Mean Sq F value

我已经尝试过这里提出的解决方案(如何在 lme4 混合模型中获得效应的 p 值(检查显着性)?),但无济于事。

为了澄清,cond 变量是一个具有三个水平的因子(SSnoLL),我相信coef 命令会为连续的bd 变量生成系数在每个级别,所以我要做的是测试这些系数的重要性。

【问题讨论】:

  • 从包的维护者那里看到问题的答案:stats.stackexchange.com/questions/118416/…
  • 谢谢!我已经尝试了那里概述的每种“P”方法,但无法获得每个系数的 p 值 - 仅用于截距。您是否知道任何其他可以实现此目的的软件包?
  • 该页面上的模型比较方法不相关(我不认为)因为我没有比较 2 个模型,而 car::anova 和 lmerTest::anova 方法不相关为我返回任何输出。 afex::mixed 给出以下错误:“UseMethod("logLik") 中的错误:没有适用于 'logLik' 的方法应用于类“NULL”的对象”

标签: r nested logistic-regression lme4


【解决方案1】:

这里有几个问题。

  • 主要是你真的只能对固定效应系数进行显着性检验;您已经对模型进行了编码,没有固定效果。您可能正在寻找
glmer(SS ~ bd + (1|cond), ...)

这将对bd 级别之间的整体(人口级别)差异进行建模,并包括cond 级别之间的截距变化。

  • 如果您在每个cond 组中代表多个级别的bd,那么您原则上还可以考虑cond 组之间的治疗效果变化:
glmer(SS ~ bd + (bd|cond), ...)
  • 然而,你还有另一个问题。在实践中,三个组(即cond 的级别)并不足以估计组间的可变性。这就是为什么您会在输出中看到 -1.00 的相关性,这表明您有一个奇异的拟合(例如,请参阅 here 了解更多讨论)。
  • 因此,另一种可能性是直接将cond 视为固定效应(调整cond 上的对比度,以便将bd 的主要效应估计为组间的平均值而不是效应在cond 的基线级别)。
glm(SS~bd*cond,contrasts=list(cond=contr.sum),...)

【讨论】:

    猜你喜欢
    • 2020-02-09
    • 2020-09-02
    • 1970-01-01
    • 2018-06-24
    • 2015-06-25
    • 1970-01-01
    • 1970-01-01
    • 2021-01-12
    • 1970-01-01
    相关资源
    最近更新 更多