如何通过logbin相对风险回归模型计算RR及95%置信区间
相对风险回归计算风险比(RR)及95%置信区间(CI)
核心原理
logbin包拟合的是对数链接的二项回归模型,模型输出的系数是对数转换后的风险比(即log(RR)),只需对系数进行指数化就能得到原始RR值;95%置信区间则通过对「系数 ± 1.96×标准误」进行指数化计算得到。
具体操作代码
基于你已拟合的fit.logbin模型,执行以下代码提取RR及95%CI:
# 提取模型系数与标准误 coefs <- coef(fit.logbin) ses <- sqrt(diag(vcov(fit.logbin))) # 计算RR和95%置信区间 rr_values <- exp(coefs) rr_ci <- exp(cbind( lower = coefs - 1.96 * ses, upper = coefs + 1.96 * ses )) # 整理成易读的结果表格 result_table <- data.frame( 变量 = names(coefs), RR = round(rr_values, 4), 95%CI下限 = round(rr_ci[, "lower"], 4), 95%CI上限 = round(rr_ci[, "upper"], 4), P值 = round(summary(fit.logbin)$coefficients[, 4], 4) ) print(result_table)
结果解读
以你的模型输出为例:
- 截距项
(Intercept)的RR为exp(-1.4883) ≈ 0.225,代表当t0_FIO1为0时的基线事件风险比; - 自变量
t0_FIO1的RR为exp(0.012995) ≈ 1.0131,说明t0_FIO1每增加1单位,事件发生的相对风险上升约1.31%,对应的95%CI为(1.0103, 1.0159),区间不包含1且P值<0.001,提示该关联具有统计学意义。
注意事项
你最初的glm代码中使用的自变量是t0_IOT,但logbin模型输出中显示的是t0_FIO1,推测是代码中的变量名笔误,需确保前后变量一致。
内容的提问来源于stack exchange,提问作者ArTu
相关产品推荐
相关产品推荐

