入门 可在线运行 更新于 2026-05-05

Logistic 回归在护理风险预测中的应用

1. 一句话告诉你这是什么

Logistic 回归是用多个自变量预测一个二分类结局的方法。在护理研究中回答”哪些因素独立影响事件是否发生”——例如年龄和合并症能否预测住院患者是否发生跌倒。

2. 什么时候用,什么时候别用

适合用

  • 结局是二分类变量(如跌倒/未跌倒、出院/死亡)
  • 想计算某个因素的调整后 OR 值(优势比)
  • 需要做风险因素筛选并控制混杂变量

不适合用

  • 结局为连续变量或有序多分类(应用线性回归或有序 Logistic)
  • 事件数太少(通常要求每组至少 10-15 个事件/非事件)
  • 预测因子之间存在完全分离(某自变量完美预测结局,系数无法估计)

3. 数据准备清单

  • 结局变量编码为 0/1(未发生/发生)
  • 分类变量做哑变量编码或因子化
  • 样本量满足 EPV 准则:事件数 10×k\ge 10 \times kkk 为自变量数)
  • 无完全分离或多重共线性
  • 缺失值处理(优先考虑多重插补而非行删除)

4. 方法直觉

Logistic 回归不直接预测 0 或 1,而是预测”事件发生的概率”,并用 logit 连接函数将概率映射到 (,+)(-\infty, +\infty) 的线性空间:

ln(p1p)=β0+β1X1++βkXk\ln\left(\frac{p}{1-p}\right) = \beta_0 + \beta_1 X_1 + \cdots + \beta_k X_k

等式左边是 log-odds(对数优势比)。对系数 β\beta 取指数 eβe^\beta 就得到 OR——“X 每增加一个单位,事件优势乘以多少”。OR > 1 表示风险增加,OR < 1 表示风险降低。

点击展开:概率预测与决策阈值

由上式可推得预测概率公式:

p=11+e(β0+β1X1++βkXk)p = \frac{1}{1 + e^{-(\beta_0 + \beta_1 X_1 + \cdots + \beta_k X_k)}}

研究人员通常取 0.5 为分类阈值,也可根据临床需求调整(如跌倒筛查偏向灵敏度高,可降低阈值至 0.3)。

5. R 代码(复制即可跑)

library(broom)
library(pROC)

# 模拟护理研究数据
set.seed(2026)
n <- 500
df <- data.frame(
  age    = rnorm(n, mean = 70, sd = 12),           # 年龄
  bmi    = rnorm(n, mean = 24, sd = 4),            # BMI
  los    = rpois(n, lambda = 10),                  # 住院天数
  fall   = rbinom(n, size = 1, prob = 0.2)         # 是否跌倒(结局)
)

# 拟合模型
fit <- glm(fall ~ age + bmi + los,
           data = df, family = binomial(link = "logit"))

# 模型摘要
summary(fit)

# OR 值及 95% CI
tidy(fit, conf.int = TRUE, exponentiate = TRUE)    # ⬅ exponentiate = TRUE 输出 OR

# 模型预测与 AUC
df$pred <- predict(fit, type = "response")
roc_obj <- roc(df$fall, df$pred)
auc(roc_obj)                                        # ⬅ AUC > 0.7 可接受

6. 结果怎么读

项目值(示例)含义
年龄 OR1.041.04^*年龄每增加 1 岁,跌倒风险增加 4%
BMI OR0.950.95BMI 每增 1 单位,风险降低 5%(不显著)
住院天数 OR1.121.12^{**}住院每多 1 天,风险增加 12%
AUC0.730.73模型区分能力可接受

p<0.05,p<0.01^* p < 0.05, ^{**} p < 0.01

7. 论文里怎么写

中文: 采用二分类 Logistic 回归分析住院患者跌倒的风险因素。多因素分析显示,住院天数是跌倒的独立预测因素(OR = 1.12, 95% CI [1.04, 1.21], p=0.003p = 0.003),而年龄和 BMI 的效应未达到统计学显著水平。模型 AUC = 0.73,区分能力可接受。

English: Binary logistic regression was used to identify risk factors for falls among hospitalized patients. Multivariable analysis revealed that length of stay was an independent predictor of falls (OR = 1.12, 95% CI [1.04, 1.21], p=0.003p = 0.003), whereas the effects of age and BMI were not statistically significant. The model showed acceptable discrimination (AUC = 0.73).

8. 三个最常见的坑

  1. 把 OR 当作 RR。 队列研究中 OR 会高估发生率较高 ( >10%> 10\% ) 的事件效应,此时应优先考虑 Poisson 回归或 log-binomial 回归。
  2. 事件数不足仍强行建模。 EPV(每变量事件数)低于 10 时系数估计不稳定,建议用 Firth 惩罚似然或 Bayesian 方法。
  3. 忽略线性假设。 Logit 与连续自变量的关系需满足线性——如果不满足,可尝试加入平方项或使用限制立方样条(rcs)。

在线运行

在线运行

点击"运行"按钮,在浏览器中执行 R 分析。首次使用需等待 WebR 初始化。