理解逻辑回归的输出

R 中的广义线性模型

Richard Erickson

Instructor

如何传达逻辑回归结果?

  • 线性回归较直观:

    • 加截距
    • 乘斜率
  • Poisson 回归:

    • 需指数变换
    • 变换后与线性回归相似
  • 逻辑回归???
R 中的广义线性模型

胜算比(Odds ratio)

  • 不如 Poisson 的指数那么直观
  • 用于比较两事件发生的相对胜算
R 中的广义线性模型

胜算比示例

  • 不公平的硬币:
    • 比较正面与反面
    • 正面每 3 次,反面 1 次
    • 胜算 3:1
    • 胜算比 3.0
  • 常见于体育/博彩
  • 医学研究
R 中的广义线性模型

逻辑回归推导胜算比

对数胜算("logit"):

$\phi(x) = \text{ln}(\frac{p(x)}{1 - p(x)}) = \beta_0 + \beta_1 x$

胜算,取指数($e^{x}$):

$\frac{p(x)}{1 - p(x)} = e^{\beta_0 + \beta_1x}$

R 中的广义线性模型

连续变量的胜算比

连续变量的胜算比(OR):

$\text{OR} = \frac{e^{\beta_0 + \beta_1(x +1)}}{e^{\beta_0 + \beta_1x}} = e^{\beta_1}$

R 中的广义线性模型

解释

OR 数值:

  • OR = 1:系数无影响
  • OR < 1:系数降低胜算
  • OR > 1:系数提高胜算
R 中的广义线性模型

癌症示例

不吸烟 vs 吸烟男性(Pesch 等,2012)

  • OR:103.5(95% CI 74.8–143.2)
  • 吸烟男性患癌胜算超过 100:1!
  • 医学文献常报告 95% 置信区间而非 p 值
  • 更广泛地远离 p 值的趋势
R 中的广义线性模型

从 GLM 提取

glm_out <- glm(y ~ x, family = 'binomial')

coef(glm_out)

exp(coef(glm_out))

confint(glm_out)

exp(confint(glm_out))
R 中的广义线性模型

Tidyverse

library(broom)

glm_out <- glm(y ~ x, family = 'binomial')

tidy(glm_out, exponentiate = TRUE, conf.int= TRUE)
R 中的广义线性模型

让我们练习!

R 中的广义线性模型

Preparing Video For Download...