如何获得嵌套logit glmer模型中每个系数的p值(使用lme4)?

时间:2016-12-30 20:06:17

标签: r nested logistic-regression lme4

我正在运行以下代码:

var list = document.getElementById("chargers-list");
var noOfChargers = list.dataset.nchargers;
console.log(noOfChargers);

产生以下输出:

  • 系数
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

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

当我尝试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 * 时,我什么都没得到,只是:

anova(nest.reg2)

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

为了澄清,Analysis of Variance Table Df Sum Sq Mean Sq F value 变量是一个包含三个级别(condSSno)的因子,我相信LL command在每个级别生成连续coef变量的系数,所以我要做的是测试这些系数的重要性。

1 个答案:

答案 0 :(得分:3)

这里有几个问题。

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

将模拟bd级别之间的总体(人口级别)差异,并包括cond级别之间的截距变化。

  • 如果您在每个bd组中有多个级别的cond,那么您原则也可以允许cond组之间的治疗效果发生变化:
 
glmer(SS ~ bd + (bd|cond), ...)
  • 然而,你有另一个问题。在实践中,三组(即cond的水平)实际上不足以估计组间的变异性。这就是为什么你在输出中看到-1.00的相关性,这表明你有一个单一的拟合(例如,参见here进行更多讨论)。
  • 因此,另一种可能性就是继续将cond视为固定效果(调整cond的对比度,以便将bd的主要效果估算为平均值跨组而不是cond)基线水平的影响。
glm(SS~bd*cond,contrasts=list(cond=contr.sum),...)