原文链接:广义线性模型之泊松回归https://mp.weixin.qq.com/s/vrLnLBY8Tq9I6_UM10Lr1g
写在前面
前面文章我们学习过Logistic回归,这次我们来学习广义线性模型框架下的泊松回归(Poisson regression),它的应变量为计数类型。在线性模型中,我们通常假设应变量Y呈正态分布,其条件均值是自变量的线性组合,即对于一系列自变量X,赋予X相应的权重,然后把它们加起来,便可预测Y可能分布的均值。而广义线性模型中的应变量Y'是条件均值Y的函数(称作连接函数),此时可放松对Y是正态分布的要求,只要其服从指数分布族中的一种分布(如二项分布、伽玛分布、泊松分布等)即可。
泊松分布是统计与概率学里一种常见的离散概率分布。它是指某段连续的时间内某件事情发生的次数,而且“某件事情”发生所用的时间是可以忽略的,如在五分钟内电子元件遭受脉冲的次数,就服从于泊松分布(参考文章1)。假如把连续的时间分成无数个小片段,每个小片段都是独立的,那么在每个小片段中,电子元件可能“遭受到脉冲”或是“没有遭受到脉冲”,这不就是二项分布了嘛,只是n很大(无数个)p很小(遭受到脉冲的可能性比较小),所以泊松分布可以认为是二项分布的一种极限形式。
参考文献2中给出了具体的、直观的例子——早餐店老板如何根据历史数据准备恰当数量的包子。经过数学推导,可以得到泊松分布的概率密度函数,也即在T时间内卖出k个馒头的概率,并且根据以往数据的均值来近似公式中的期望值μ,便可以画出它的概率密度分布图。接下来早餐店老板就可以在此基础上进行计算,准备不同数量的包子相应地会满足多大概率的需求,如下图所示要是每天准备8个包子(根据题中简化的假设),那么93%的时候包子是够卖的,这种比例老板觉得很是可以接受。
实例演示
这次我们用到robust包中的Breslow癫痫发病数据,通过分析来了解抗癫痫药物对癫痫发病次数的影响。实验中癫痫病人被随机分到药物组或安慰组,经过前八周的治疗,继续观察后八周的发病情况,数据集包含轻微或严重间歇性病人的年龄和前后八周内的癫痫发作次数。因变量为sumY(后八周发病次数),自变量为治疗条件(Trt)、年龄(Age)和前八周发病次数(Base)。
首先我们来了解下数据的基本情况,代码和结果如下。
data(breslow.dat,package="robust")
# 列出所有的变量
names(breslow.dat)
# 选取我们关心的四个变量查看
summary(breslow.dat[c(6,7,8,10)])
从结果图中我们看到安慰组(placebo)有28人,药物治疗组有31人,而且明显看出Base和sumY两个变量的最大值存在异常情况。下面我们画直方图和箱线图进行更直观地了解。
# par()生成一个当前图形参数设置的列表
# no.readonly=TRUE指明参数列表可修改
opar<-par(no.readonly=TRUE)
# 按行填充、行数为1、列数为2的图形矩阵
par(mfrow=c(1,2))
attach(breslow.dat)
# 绘制直方图
# breaks指定数量,sumY最大值为302,分成15格的话每个区间大小大约20
hist(sumY,breaks=15,xlab="发病次数",main="发病次数分布图")
boxplot(sumY~Trt,xlab="治疗条件",main="安慰组和药物治疗组比较图")
从上图中我们看出发病次数0~20次最多,59个被试中有30多个。从右图中我们初步判断药物治疗组的发病情况要好于安慰组,平均值略小,方差也更小。接下来我们进行泊松回归的拟合。
fit<-glm(sumY~Base+Age+Trt,data=breslow.dat,family=poisson())
summary(fit)
上图中首先展示了偏差残差(Deviance Residuals),此处使用了基于偏差的模型比较方法。偏差与残差平方和具有相似的作用,都是用来衡量回归模型拟合质量的好坏。依据算出的偏差可以得到相应的统计量,当拟合效果欠佳时,检验统计量会比较大(卡方分布)。红框部分是通过拟合获得的模型参数,拿Age来说,保持其它参数不变,年龄增加一岁,癫痫发病数的对数均值大约增加0.03。为了在最初意义上(而不是取对数后的结果)对模型参数进行解释,我们需要进行指数化操作,如下所示。
我们再来看一下,此时保持其它参数不变,当年龄增长一岁时,对应的癫痫发病次数将会是原先的1.023倍,意味着更大的年龄与更多的发病次数相联系。然而对于药物治疗变量来说,每增加一个单位,癫痫发病次数会是原先的0.86,也就是说与安慰组相比,药物治疗组的发病率降低了14%。
参考文章:
- 泊松回归
https://blog.csdn.net/qq_38412868/article/details/105918117 - 如何通俗理解泊松分布?
https://blog.csdn.net/ccnt_2012/article/details/81114920 - 属性数据分析 | 第三章-04-统计推断与模型检验
https://zhuanlan.zhihu.com/p/269015018 - 泊松回归模型和对数线性模型的区别是什么?
https://www.zhihu.com/question/53242918?sort=created