广义线性模型
1 广义线性模型
1.1 Logisitic回归:妊娠糖尿病分析
因变量:糖尿病(Diabetes){阳性:pos,阴性:neg},设阳性为1、阴性为0
自变量:年龄(Age)、体重指数(BMI,kg/m2 )、血糖浓度(Glucose )、舒张压(Diastolic blood pressure,(mm)Hg )、怀孕次数(Number of times pregnant )
数据文件:diabetes.csv,共 724个观察值
1.1.1 划分训练集和测试集
- 前450条个案为训练集,用于估计Logist模型
- 后274条个案为测试集,用于评价模型的估计效果
- 训练集糖尿病率36.44%,测试集糖尿病率为31.02%,两者大致相等。
1.1.2 训练集估计回归方程
term | estimate | std.error | statistic | p.value |
---|---|---|---|---|
(Intercept) | -7.950 | 0.97 | -8.21 | 0.00 |
Age | 0.012 | 0.01 | 1.00 | 0.32 |
BMI | 0.089 | 0.02 | 4.81 | 0.00 |
Glucose | 0.032 | 0.00 | 7.39 | 0.00 |
Pressure | -0.005 | 0.01 | -0.50 | 0.61 |
Pregnant | 0.098 | 0.04 | 2.45 | 0.01 |
1.1.3 测试集预测效果评价
pos_pred | neg_pred | |
---|---|---|
pos | 53 | 32 |
neg | 21 | 168 |
由训练集预测混淆矩阵可知
- 准确率(accuracy):80.66%
- 精确率(precision):62.35%
- 召回率(recall):71.62%
得分( score):66.67%
1.1.4 回归模型边际效应
Age BMI Glucose Pressure Pregnant
0.26 1.94 0.70 -0.11 2.14
年龄每增加一岁患病风险提高0.26%;体重指数每增加1患病风险提高1.94%;血糖浓度每增加1患病风险提高0.7%;舒张压每增加1患病风险降低0.11%;怀孕次数每增加一次患病风险提高2.14%。
体重指数、血糖浓度、怀孕次数对患病风险呈正向影响,符合预期。
年龄和舒张压对患病风险影响小且不显著,考虑逐步回归选择更合适的模型
1.2 Logisitic回归逐步回归
1.2.1 逐步回归的回归方程
Start: AIC=461.36 Diabetes ~ Age + BMI + Glucose + Pressure + Pregnant
Df Deviance AIC
- Pressure 1 449.62 459.62
- Age 1 450.35 460.35
449.36 461.36 - Pregnant 1 455.53 465.53
- BMI 1 474.67 484.67
- Glucose 1 515.90 525.90
Step: AIC=459.62 Diabetes ~ Age + BMI + Glucose + Pregnant
Df Deviance AIC
- Age 1 450.43 458.43
449.62 459.62 - Pregnant 1 455.69 463.69
- BMI 1 475.95 483.95
- Glucose 1 515.92 523.92
Step: AIC=458.43 Diabetes ~ BMI + Glucose + Pregnant
Df Deviance AIC
term | estimate | std.error | statistic | p.value |
---|---|---|---|---|
(Intercept) | -7.950 | 0.97 | -8.21 | 0.00 |
Age | 0.012 | 0.01 | 1.00 | 0.32 |
BMI | 0.089 | 0.02 | 4.81 | 0.00 |
Glucose | 0.032 | 0.00 | 7.39 | 0.00 |
Pressure | -0.005 | 0.01 | -0.50 | 0.61 |
Pregnant | 0.098 | 0.04 | 2.45 | 0.01 |
1.2.2 逐步回归的预测效果
pos_pred | neg_pred | |
---|---|---|
pos | 53 | 32 |
neg | 22 | 167 |
由训练集预测混淆矩阵可知
- 准确率(accuracy):80.29%
- 精确率(precision):62.35%
- 召回率(recall):70.67%
得分( score):66.25% ### 逐步回归的边际效应
Age BMI Glucose Pressure Pregnant
0.26 1.94 0.70 -0.11 2.14
2 判别分析
2.1 线性贝叶斯判别
2.1.1 判别函数
由于只有目标变量只有两类,线性贝叶斯判别等价于Fisher判别。以下为Fisher判别的判别函数:
该判别函数和Logsitic回归的方程近似等价,各系数存在近似的倍数关系。注意,这里
2.1.2 测试集合的预测结果
测试集合预测的后验概率:
两类后验概率差异越大代表判别越有把握,错判的概率越小。
测试集合预测的混淆矩阵
pos_pred | neg_pred | |
---|---|---|
pos | 53 | 32 |
neg | 22 | 167 |
预测效果与Logistic模型基本一致。
2.2 二次贝叶斯判别
2.2.1 测试集合的预测
2.2.2 测试集合的混淆矩阵
pos_pred | neg_pred | |
---|---|---|
pos | 53 | 32 |
neg | 23 | 166 |
模型整体表现良好:模型的 准确率 达到 79.9%,表示大多数预测是正确的。这是一个相对较高的准确率,说明模型在区分正负类样本方面有一定的能力。
精确率和召回率之间的权衡:
精确率(62.3%)和 召回率(69.6%)显示出模型在预测正类(pos)时存在一定的偏差。尽管模型能识别出大约 70% 的实际正类样本(召回率),但其中只有大约 62% 的预测为正类的样本实际上确实是正类(精确率)。这意味着,模型在预测为正类时,误判的负类样本比例较高。
如果目标是提高正类的覆盖率(即召回率),则可以容忍一定的误判,反之,如果目标是减少误判,则可能需要调整模型以提高精确率。
F1 分数 约为 0.657,说明模型在平衡 精确率 和 召回率 上表现一般。F1 分数在 0.6 到 0.7 之间,意味着模型可以在两者之间做出一定的妥协,但仍有提升空间。
3 聚类分析
利用例子7.2中2007年城镇居民消费数据作聚类分析,并比较不同聚类的效果
3.1 系统聚类
3.1.1 类平均法
从树状图看两类聚合为一类时聚类距离明显突变,分为两类比较合理。其中第一类包括:北京、上海、浙江、广东,其余为一类。
从各类的类中心看,第一类为沿海发达地区,各类消费水平明显高于第二类。
类别 | 食品 | 衣着 | 设备 | 医疗 | 交通 | 教育 | 居住 | 杂项 |
---|---|---|---|---|---|---|---|---|
1 | 5252.19 | 1265.92 | 864.95 | 940.69 | 2730.43 | 2297.70 | 1317.82 | 583.77 |
2 | 3252.73 | 983.08 | 521.21 | 635.12 | 1012.19 | 1072.89 | 880.07 | 316.79 |
3.1.2 离差平方和法
从树状图可以看出离差平方和法和类平均法大致相同,分为两类比较合理。
从各类的类中心看,第一类为沿海发达地区,各类消费水平明显高于第二类。和类平均法的结果大致相同。
类别 | 食品 | 衣着 | 设备 | 医疗 | 交通 | 教育 | 居住 | 杂项 |
---|---|---|---|---|---|---|---|---|
1 | 5252.19 | 1265.92 | 864.95 | 940.69 | 2730.43 | 2297.70 | 1317.82 | 583.77 |
2 | 3252.73 | 983.08 | 521.21 | 635.12 | 1012.19 | 1072.89 | 880.07 | 316.79 |
3.2 K-means聚类
3.2.1 分为三类
第一类包括:河北、山西、内蒙古、吉林、黑龙江、江西、河南、贵州、陕西、甘肃、青海、宁夏、新疆 ,多为中部和沿海地区
第二类包括:北京、上海、浙江、广东,多为东北和西部地区 ,多为东北和西部地区。
第三类包括:天津、辽宁、江苏、安徽、福建、山东、湖北、湖南、广西、海南、重庆、四川、云南、西藏 ,为沿海发达地区。
从各类的类中心看,第三类地区的各项消费水平最高,尤其在交通、教育等项目;第一类地区的的各项消费水平均低于第三类但高于第二类地区。
类别 | 食品 | 衣着 | 设备 | 医疗 | 交通 | 教育 | 居住 | 杂项 |
---|---|---|---|---|---|---|---|---|
1 | 2840.50 | 1030.10 | 492.95 | 634.22 | 887.03 | 1006.11 | 833.05 | 322.25 |
2 | 5252.19 | 1265.92 | 864.95 | 940.69 | 2730.43 | 2297.70 | 1317.82 | 583.77 |
3 | 3635.52 | 939.41 | 547.45 | 635.95 | 1128.40 | 1134.90 | 923.74 | 311.73 |
3.2.2 分为两类
第一类包括:北京、天津、上海、浙江、福建、广东 ,多为中部和沿海地区
第二类包括:河北、山西、内蒙古、辽宁、吉林、黑龙江、江苏、安徽、江西、山东、河南、湖北、湖南、广西、海南、重庆、四川、贵州、云南、西藏、陕西、甘肃、青海、宁夏、新疆,多为东北和西部地区 ,多为东北和西部地区。
可以看出第二类地区各项消费水平都高于第一类地区
类别 | 食品 | 衣着 | 设备 | 医疗 | 交通 | 教育 | 居住 | 杂项 |
---|---|---|---|---|---|---|---|---|
1 | 4925.72 | 1171.43 | 810.96 | 904.86 | 2306.43 | 2042.83 | 1324.99 | 529.12 |
2 | 3171.13 | 983.13 | 506.67 | 619.27 | 976.49 | 1036.08 | 843.34 | 308.55 |