如何解释泊松回归中的系数?

机器算法验证 r 广义线性模型 解释 泊松分布 回归系数
2022-01-29 00:18:32

如何解释泊松回归中的主要影响(虚拟编码因子的系数)?

假设以下示例:

treatment     <- factor(rep(c(1, 2), c(43, 41)), 
                        levels = c(1, 2),
                        labels = c("placebo", "treated"))
improved      <- factor(rep(c(1, 2, 3, 1, 2, 3), c(29, 7, 7, 13, 7, 21)),
                        levels = c(1, 2, 3),
                        labels = c("none", "some", "marked"))    
numberofdrugs <- rpois(84, 10) + 1    
healthvalue   <- rpois(84, 5)   
y             <- data.frame(healthvalue, numberofdrugs, treatment, improved)
test          <- glm(healthvalue~numberofdrugs+treatment+improved, y, family=poisson)
summary(test)

输出是:

Coefficients:
                 Estimate Std. Error z value Pr(>|z|)    
(Intercept)       1.88955    0.19243   9.819   <2e-16 ***
numberofdrugs    -0.02303    0.01624  -1.418    0.156    
treatmenttreated -0.01271    0.10861  -0.117    0.907   MAIN EFFECT  
improvedsome     -0.13541    0.14674  -0.923    0.356   MAIN EFFECT 
improvedmarke    -0.10839    0.12212  -0.888    0.375   MAIN EFFECT 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

我知道事故率numberofdrugsexp(-0.023)=0.977但是我如何解释虚拟变量的主要影响?

1个回答

指数numberofdrugs系数是乘法项,用于计算healthvaluenumberofdrugs增加 1 个单位时的估计值。在分类(因子)变量的情况下,指数系数是相对于该变量的基本(第一个因子)水平的乘法项(因为 R 默认使用处理对比)。exp(Intercept)是基准利率,所有其他估计都与它相关。

在您的示例中,healthvalue2吸毒者的估计值是(在 exp 中使用加法相当于乘法):"placebo"improvement=="none"

 exp( 1.88955 +    # thats the baseline contribution
      2*-0.02303 + 0 + 0 )  # and estimated value will be somewhat lower
 [1] 6.318552

虽然4吸毒者、"treated"和改善"some"估计healthvalue

exp( 1.88955 + 4*-0.02303 + -0.01271 + -0.13541)
[1] 5.203388

附录:这就是“在对数尺度上加法”的意思。“对数赔率尺度上的加法”是我的老师 Barbara McKnight 在强调在进行任何类型的预测时需要使用所有适用的术语值乘以它们的估计系数时使用的短语。您首先将所有系数(包括截距项)乘以每个协变量值,然后对结果和求幂。从 R 中的回归对象返回系数的方法通常是使用coef()提取函数(在下面使用不同的随机实现完成):

 coef(test)
  #   (Intercept)    numberofdrugs treatmenttreated     improvedsome   improvedmarked 
  #   1.18561313       0.03272109       0.05544510      -0.09295549       0.06248684 

4因此,对服用药物 ,"treated"并有"some"改善的受试者的估计值的计算将是:

 exp( sum( coef(test)[ c(1,2,3,4) ]* c(1,4,1,1) ) ) 
 [1] 3.592999

这种情况的线性预测变量应该是以下各项的总和:

 coef(test)[c(1,2,3,4)]*c(1,4,1,1) 
 #    (Intercept)    numberofdrugs treatmenttreated     improvedsome 
 #     1.18561313       0.13088438       0.05544510      -0.09295549

这些原则应适用于任何向用户返回系数表的统计数据包。方法和原则比我使用 R 时可能出现的更普遍。


我正在复制选定的澄清评论,因为它们在默认显示中“消失”:

问:所以您将系数解释为比率!谢谢!– 马克美元

答:系数是比率的自然对数。– DWin

Q2:在这种情况下,在泊松回归中,指数系数是否也称为“优势比”?– 奥尔特

A2:不。如果是逻辑回归,它们会是,但在泊松回归中,LHS 是事件数,隐式分母是风险数,那么指数系数是“比率”或“相对风险”。