运行加权Logistic回归时出现二项式GLM非整数成功数提示的原因
提示信息出现的原因
这个提示是因为你使用了二项式族(binomial)的广义线性模型,但加权后的"成功次数"不符合二项式模型的默认整数假设,具体细节如下:
- 二项式GLM原本假设响应变量对应的是整数计数(比如n次独立试验里的成功次数k,k必须是整数)。当你传入
weights参数时,R会自动计算加权后的成功次数(outcome * weight的总和)和失败次数((1-outcome)*weight的总和)。 - 你用的IPTW权重通常是连续型的非整数,加权后计算出的成功/失败次数自然会变成非整数,这就触发了R的提示——它在提醒你当前输入和二项式模型的传统假设不匹配。
需要说明的是:这个提示不是代码错误,也不会中断模型运行。因为GLM的二项式拟合实际上支持非整数的"伪计数",这在IPTW这类需要加权逆概率的分析场景里是很常见的情况。如果看着提示不舒服,可以把family=binomial(link=log)改成family=quasibinomial(link=log),拟合结果几乎完全一致,且不会弹出这个提示。
你的代码示例(格式化后):
model <- glm(outcome~treatment, weights=weight, data=mydata, family=binomial(link=log)) betaiptw <- coef(model) SE <- sqrt(diag(vcovHC(model, type ="HC0"))) rr <- exp(betaiptw[2]) lcl <- exp(betaiptw[2] -1.96*SE[2]) ucl <- exp(betaiptw[2] +1.96*SE[2]) c(lcl, rr, ucl)
内容的提问来源于stack exchange,提问作者ggplotr
相关产品推荐
相关产品推荐

