使用R语言进行Logistic回归分析(2)

一、数据集描述,问题要求

下表是40位肺癌病人的生存资料,X1表示生活行为能力平分(1到100),X2为病人的年龄(年),X3由诊断到进入研究的时间(月),X4表示肿瘤的类型('0'表示鳞瘤,'1'表示小型细胞癌,'3'表示腺癌,'4'表示大型细胞癌)X5表示化疗的方法('1'表示常规,'0'表示试验新法);Y表示病人的生存时间('0'表示生存时间短,'生存时间小于200天,'1'表示生存时间长,生存时间大于等于200天)

要求:1、建立E(y)=P(Y=1)对X1-X5的Logistic回归模型,并进行参数显著性检验和预测。

二、根据数据集,建立Logistic回归模型,并进行分析

x1<-c(70,60,70,40,40,70,70,80,60,30,80,40,60,40,20,50,50,40,80,70,60,90,50,70,20,80,60,50,

70,40,30,30,40,60,80,70,30,60,80,70)

x2<-c(64,63,65,69,63,48,48,63,63,53,43,55,66,67,61,63,66,68,41,53,37,54,52,50,65,52,70,40,36,44,54,59,69,50,62,68,39,49,64,67)

x3<-c(5,9,11,10,58,9,11,4,14,4,12,2,25,23,19,4,16,12,12,8,13,12,8,7,21,28,13,13,22,36,9,87,5,22,4,15,4,11,10,18)

x4<-c(1,1,1,1,1,1,1,2,2,2,2,2,2,2,3,3,0,0,0,0,1,1,1,1,1,1,1,1,2,2,2,2,3,3,3,0,0,0,0,0)

x5<-c(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)

y<-c(1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1)

df<-data.frame(x1,x2,x3,x4,x5,y)

log.glm<-glm(y~x1+x2+x3+x4+x5,family = binomial,data=df)

summary(log.glm)

运行得到:

从回归结果可以看到,系数只有一个是显著的,即病人的生活行为能力X1对p(Y=1)的影响是显著的,其余系数没通过检验。

三、使用逐步回归法,筛选出合适变量并找到最优的回归方程

log.step<-step(log.glm)

summary(log.step)

运行得到:

复制代码
> log.step<-step(log.glm)
Start:  AIC=40.39
y ~ x1 + x2 + x3 + x4 + x5

       Df Deviance    AIC
- x3    1   28.484 38.484
- x2    1   28.484 38.484
- x5    1   28.799 38.799
<none>      28.392 40.392
- x4    1   32.642 42.642
- x1    1   38.306 48.306

Step:  AIC=38.48
y ~ x1 + x2 + x4 + x5

       Df Deviance    AIC
- x2    1   28.564 36.564
- x5    1   28.993 36.993
<none>      28.484 38.484
- x4    1   32.705 40.705
- x1    1   38.478 46.478

Step:  AIC=36.56
y ~ x1 + x4 + x5

       Df Deviance    AIC
- x5    1   29.073 35.073
<none>      28.564 36.564
- x4    1   32.892 38.892
- x1    1   38.478 44.478

Step:  AIC=35.07
y ~ x1 + x4

       Df Deviance    AIC
<none>      29.073 35.073
- x4    1   33.535 37.535
- x1    1   39.131 43.131
复制代码
> summary(log.step)

Call:
glm(formula = y ~ x1 + x4, family = binomial, data = df)

Coefficients:
            Estimate Std. Error z value Pr(>|z|)  
(Intercept) -6.13755    2.73844  -2.241   0.0250 *
x1           0.09759    0.04079   2.393   0.0167 *
x4          -1.12524    0.60239  -1.868   0.0618 .
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 44.987  on 39  degrees of freedom
Residual deviance: 29.073  on 37  degrees of freedom
AIC: 35.073

Number of Fisher Scoring iterations: 6

使用逐步回归法得到了最终的回归方程,此时已经剔除了变量X2,X3,X5,只保留变量X1,X4,从回归方程的检验结果来看,系数是显著性得到了提高。

最终的回归方程为:

p=exp(-6.13755+0.09759x1-1.12524x4)/(1+exp(-6.13755+0.09759x1-1.12524x4))

使用该回归方程对,对40位病人生存时间较长的概率(Y=1)进行拟合和预测。

复制代码
> log.pre<-predict(log.step)
> p<-exp(log.pre)/(1+exp(log.pre))
> p
运行得到各病人的生存时间较长的概率p(Y=1):
  

从而得到最终的生存时间较长的概率的拟合值。

相关推荐
GISer_Jing5 小时前
AI自动化工作流:智能驱动未来(升级研究生项目!!!)
人工智能·前端框架·自动化
草捏子5 小时前
Agent Skills:让 AI 一次学会、永远记住的能力扩展方案
人工智能
NocoBase5 小时前
【2.0 教程】第 1 章:认识 NocoBase ,5 分钟跑起来
数据库·人工智能·开源·github·无代码
后端小肥肠5 小时前
OpenClaw实战|从识图到公众号内容自动化,我跑通了完整链路
人工智能·aigc·agent
Elastic 中国社区官方博客5 小时前
快速 vs. 准确:衡量量化向量搜索的召回率
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索
qq_381338506 小时前
【技术日报】2026-03-18 AI 领域重磅速递
大数据·人工智能
NocoBase6 小时前
开源项目管理工具选型指南(2026年最新)
人工智能·开源·无代码
feasibility.6 小时前
AI 爬虫高手养成:Openclaw+Scrapling 手动部署 + 采集策略(以Walmart 电商平台为例)
人工智能·爬虫·科技·机器人·agi·openclaw·scrapling
程序员老猫6 小时前
前端菜鸡狂喜!DeepSeek+Gemini,嘴炮出完整博客方案
人工智能
AI周红伟7 小时前
周红伟:《OpenClaw安全防控:OpenClaw++Skills智能体安全部署、实操和企业应用实操》
人工智能·阿里云·云计算·腾讯云·openclaw