glmer
用于估计y
数据聚类时对 logit 尺度的影响。在以下模型中
fit1 = glmer(y ~ treat + x + ( 1 | cluster), family = binomial(link = "logit"))
的exp
系数treat
是二元0-1
处理变量的优势比,x
是协变量,cluster
是我们对随机效应(截距)建模的聚类指标。中估计风险比率的标准方法glm
是使用log
链接代替,即family=binomial(link = "log")
。但是在glmer
我得到错误
Error in (function (fr, X, reTrms, family, nAGQ = 1L, verbose = 0L, maxit = 100L, :
(maxstephalfit) PIRLS step-halvings failed to reduce deviance in pwrssUpdate
打电话后
fit1 = glmer(y ~ treat + x + ( 1 | cluster), family = binomial(link = "log"))
网络搜索显示其他人与Gamma
家人有类似的问题。
正如下面可重现的示例所示,这似乎是一个普遍问题。因此,我的问题是:如何使用混合效应模型估计风险比glmer
?
可重现的示例 下面的代码模拟了重现问题的数据。
n = 1000 # sample size
m = 50 # number of clusters
J = sample(1:m, n, replace = T) # simulate cluster membership
x = rnorm(n) # simulate covariate
treat = rbinom(n, 1, 0.5) # simulate random treatment
u = rnorm(m) # simulate random intercepts
lt = x + treat + u[J] # compute linear term of logistic mixed effect model
p = 1/(1+exp(-lt)) # use logit link to transform to probabilities
y = rbinom(n,1,p) # draw binomial outcomes
d = data.frame(y, x, treat)
# First fit logistic model with glmer
fit1 = glmer( y ~ treat + x + (1 | as.factor(J)),
family = binomial(link = "logit"), data = d)
summary(fit1)
# Now try to log link
fit2 = glmer( y ~ treat + x + (1 | as.factor(J)),
family = binomial(link = "log"), data = d)