三.广义线性模型
背景:

广义线性模型通过拟合响应变量的条件均值的一个函数(不是响应变量的条件均值),假设响应变量服从指数分布族中的某个分布(并不仅限于正态分布),极大地扩展了标准线性模型。模型参数估计的推导依据的是极大似然估计,而非最小二乘法。以下为两者比较:

三.1 广义线性模型和 glm()函数
在广义线性模型中,可放松Y为正态分布的假设,改为Y服从指数分布族中的一种分布即可:

连用的函数:

三.2模型拟合和回归诊断
目前没有标准的方法。对于诊断图来说,当响应变量有许多值时,诊断图非常有用;而当响应变量只有有限个值时(比如Logistic回归),诊断图的功效就会降低很多。
四.Logistic 回归
理解logistic回归是广义线性模型的一种。
拟合模型
以AER包中的数据框Affairs为例,我们将通过探究婚外情的数据来阐述Logistic回归的过程。
fit.full <- glm(ynaffair ~ gender + age + yearsmarried + children +
religiousness + education + occupation +rating,
data=Affairs, family=binomial())
summary(fit.full)

重点看回归系数的p值。
重新拟合只纳入age、yearsmarried、religiousness和rating的模型fit.reduced.之后可以用anova()函数对它们进行比较(优于是嵌套函数)(AIC不需嵌套)。
解释模型参数:

可以看到婚龄增加一年,婚外情的优势比将乘以1.106(保持年龄、宗教信仰和婚姻评定不变)。
评价预测概率对模型影响:
predict()函数。
过度离势
p289
Logistic回归的变种
如果响应变量包含两个以上无序类别(比如,已婚/寡居/离婚);若响应变量是一组有序的类别(比如,信用风险为差/良/好),分别用什么logistic回归。
五.泊松回归
我们将使用robust包中的Breslow癫痫数据( Breslow, 1993)。特别地,我们将讨论在治疗初期的八周内,抗癫痫药物对癫痫发病数的影响。(癫痫发病次数符合泊松回归)
加载数据
fit <- glm(sumY ~ Base + Age + Trt, data=breslow.dat, family=poisson())
summary(fit)
解释模型参数

过度离势
p292
> library(qcc)
> qcc.overdispersion.test(breslow.dat$sumY, type="poisson")
#Overdispersion test Obs.Var/Theor.Var Statistic p-value
#poisson data 62.9 3646 0
显著性检验的p值果然小于0.05,进一步表明确实存在过度离势,因此用family="quasipoisson"替换family="poisson"。
泊松回归变种
- 时间段变化的泊松回归
固定长度,使用glm()函数中的offset选项。
2.零膨胀的泊松回归
可以把该模型看作Logistic回归(预测结构零值)和泊松回归(预测无结构零值观测的计数)的组合。 pscl包中的zeroinfl()函数可做零膨胀泊松回归。
3.稳健泊松回归
当存在离群点和强影响点时,该方法会很有效。
网友评论