如何利用R语言实现logistic逐步回归


导 语

在日常学习或工作中经常会使用线性回归模型对某一事物进行预测,例如预测房价、身高、GDP、学生成绩等,发现这些被预测的变量都属于连续型变量。然而有些情况下,被预测变量可能是二元变量,即成功或失败、流失或不流失、涨或跌等,对于这类问题,线性回归将束手无策。这个时候就需要另一种回归方法进行预测,即Logistic回归。欢迎关注我的个人微信公众号:全哥的学习生涯,获取更多R语言与数据分析学习知识。

在实际应用中,Logistic模型主要有三大用途:

1)寻找危险因素,找到某些影响因变量的"坏因素",一般可以通过优势比发现危险因素;

2)用于预测,可以预测某种情况发生的概率或可能性大小;

3)用于判别,判断某个新样本所属的类别。

Logistic模型实际上是一种回归模型,但这种模型又与普通的线性回归模型又有一定的区别:

1)Logistic回归模型的因变量为二分类变量;

2)该模型的因变量和自变量之间不存在线性关系;

3)一般线性回归模型中需要假设独立同分布、方差齐性等,而Logistic回归模型不需要;

4)Logistic回归没有关于自变量分布的假设条件,可以是连续变量、离散变量和虚拟变量;

5)由于因变量和自变量之间不存在线性关系,所以参数(偏回归系数)使用最大似然估计法计算。


而逐步回归的基本思想是将变量逐个引入模型,每引入一个解释变量后都要进行F检验,并对已经选入的解释变量逐个进行t检验,当原来引入的解释变量由于后面解释变量的引入变得不再显著时,则将其删除。以确保每次引入新的变量之前回归方程中只包含显著性变量。这是一个反复的过程,直到既没有显著的解释变量选入回归方程,也没有不显著的解释变量从回归方程中剔除为止。以保证最后所得到的解释变量集是最优的。

依据上述思想,可利用逐步回归筛选并剔除引起多重共线性的变量,其具体步骤如下:先用被解释变量对每一个所考虑的解释变量做简单回归,然后以对被解释变量贡献最大的解释变量所对应的回归方程为基础,再逐步引入其余解释变量。经过逐步回归,使得最后保留在模型中的解释变量既是重要的,又没有严重多重共线性


在这里,我应用了以前实验时的一个数据集向大家展示,该实验的目的是探究哪些因素会对疾病的发生产生影响,在本数据集中,Diseases即为要研究的变量,即此疾病是否会发生,分类为0-未患病,1-患病;Diabetes为病人是否罹患糖尿病,分类为0-未患病,1-患病; Acharacter为是否为A型性格,分类为0-否,1-是;Smoke为是否吸烟,分类为0-否,1-是;Nation为是否汉族,分类为0-否,1-是;Sex为性别,分类为0-男,1-女,以上各变量均为二分类变量,同时因为研究的指标Diseases也为二分类变量,故这里不能使用线性回归,而应使用logistic回归。其余变量,Age年龄,Height升高,Weight体重,Pressure血压以及BMI指数均为连续型变量,需要注意的是,本数据集已对原始数据进行了清洗,现在呈现的是标准化后的数据。需要原始数据集自己进行练手分析的读者请在公众号(全哥的学习生涯)内回复“逻辑回归”获得。


1. 载入数据

data<-read.csv(“C:/Users/Desktop/data.csv”)

head(data,10)

本数据的前10行如图1所示。


图1

2. 转换变量类型

由于性别,是否吸烟,是否患有糖尿病等二分类变量的“1”和“0”并非代表一个数值,而其真正意义是代表一个水平(level),且它们只是一个名义型变量而非连续型的数值变量,因此在R语言中,我们需要将其转换为因子(factor)类型。因子转换的代码如图2所示。


图2

3. logistic回归分析

在R中,构建Logistic回归模型只需要一步,即glm()命令,需要分析的因变量指标Diseases放在最前面,后面依次为要分析的自变量,代码如图3所示。结果如图4所示。欢迎关注我的个人微信公众号:全哥的学习生涯,获取更多R语言与统计分析学习知识。


图3


图4

4. 逐步回归分析

在这里以AIC信息统计量为准则,通过选择最小的AIC信息统计量来实现增加变量的目的,并得到最优化的模型。

代码为:

logit.step <- step(md,direction=”both”)

summary(logit.step)

在此处应注意:若改为direction=”forward”即为前进法,反之backward为后退法,但是前进法和后退法都有明显的不足。前进法可能存在这样的问题:它不能反映引进新的自变量值之后的变化情况。因为某个自变量开始被引入后得到回归方程对应的AIC最小,但是当再引入其他变量后,可能将其从回归方程中提出会是的AIC值变小,但是使用前进法就没有机会将其提出,即一旦引入就会是终身制的。这种只考虑引入而没有考虑剔除的做法显然是不全面的。类似的,后退法中一旦某个自变量被剔除,它就再也没有机会重新进入回归方程。根据前进法和后退法的思想及方法,人们比较自然地想到将两种方法结合起来,这就产生了逐步回归,也就是direction=”both”。

结果如图5所示。逐步回归筛选的最优子集即为我用黄色方框标注的各个指标,我们可以看出,并未去掉任一变量,而是包含了所有。但在显著水平为0.05时,我用红色方框,即Age,Height,Weight,Pressure以及BMI的回归系数Pr均不显著。所以由AIC选出的模型整体最优,但可能包含不显著的变量,需要删去不显著的变量(即红色方框的值),得到新的回归结果。


图5

5. 最终结果

最优模型的代码如图6所示,最终结果如图7所示,可以看出纳入的各变量回归系数均显著。

最后,如果屏幕前的你如果对R语言学习还有什么问题或看法,以及想获取更多的R语言学习与数据分析知识,欢迎关注公众号:全哥的学习生涯。

图6
图7
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容