R数据分析:逐步回归的做法和原理,案例剖析

做回归的时候经常头痛的一个问题就是变量的选择,好多人一放一大堆变量但是结果做出来都没意义,这个时候你可以试试让算法给你选择最优的自变量组合哟。

那么今天要写的就是回归时筛选变量的逐步法:

The stepwise regression (or stepwise selection) consists of iteratively adding and removing predictors, in the predictive model, in order to find the subset of variables in the data set resulting in the best performing model, that is a model that lowers prediction error.

逐步法又分三种策略:

  1. 前进:就是把变量按照贡献大小一个一个的往回归模型中放,直到所有自变量都是显著的为止。
  2. 后退:就是把所有的自变量都放进去然后把贡献小的自变量一个一个的往出来取,直到所有的自变量都显著。
  3. 逐步Stepwise selection:这个就是把两种方法结合起来,先是把贡献大的变量一个一个放(前进),所有变量放完了又把没有贡献的取出来(后退)。

R语言实操

在R中能做逐步回归的方法有很多,比如:

  • stepAIC() [MASS 包]
  • regsubsets() [leaps 包]
  • train() [caret 包]

今天我还是给大家写一个例子,这个例子我们用train来做,train()有一个可选参数 method,这个参数可以有以下3个选择:

  • "leapBackward", to fit linear regression with backward selection后退
  • "leapForward", to fit linear regression with forward selection前进
  • "leapSeq", to fit linear regression with stepwise selection 逐步

我们用到的数据为R自带的Swiss数据集,里面有6个变量:

image

我想用其余5个变量来预测Fertility,但是5个有点多,我想用逐步回归选一选

我要选出一个最好的自变量组合来预测Fertility:

step.model <- train(Fertility ~., data = swiss,
                    method = "leapSeq", 
                    tuneGrid = data.frame(nvmax = 1:5),
                    trControl = train.control
)
step.model$results

运行上面的代码就可以输出如下结果:

image

我们把自变量的最大个数nvmax规定为5,所以我们会跑出来不同自变量个数的最佳自变量组合的模型结果:

the function starts by searching different best models of different size, up to the best 5-variables model. That is, it searches the best 1-variable model, the best 2-variables model, …, the best 5-variables models.

我们需要根据模型的RMSE和MAE对模型进行选择,可以看到模型5的RMSE和MAE是最小的,所以最好的模型就是5个变量都放进去,当然了,你不愿意自己选,也可以直接输出最好的模型:

step.model$bestTune

[图片上传失败...(image-8456d2-1613469621881)]

结果显示依然是模型5最好。

那么模型到底怎么选出来的呢?

summary(step.model$finalModel)
image

从输出结果可以看到自变量的选择过程,如果只要一个变量那么最好的选择就是Education,如果放两个自变量,那么最好的选择就是Education和Catholic。以此类推。。

那么模型的系数是多少呢?

coef(step.model$finalModel, 5)
image

还有,既然变量都给你选好了,我们直接用lm法也可以得到模型系数的呀:

lm(Fertility ~ Agriculture +Examination+ Education + Catholic + Infant.Mortality, 
   data = swiss)
image

模型系数一摸一样。

小结

今天给大家写了逐步回归的做法,感谢大家耐心看完,自己的文章都写的很细,代码都在原文中,希望大家都可以自己做一做,请关注后私信回复“数据链接”获取所有数据和本人收集的学习资料。如果对您有用请先收藏,再点赞转发。

也欢迎大家的意见和建议。

如果你是一个大学本科生或研究生,如果你正在因为你的统计作业、数据分析、论文、报告、考试等发愁,如果你在使用SPSS,R,Python,Mplus, Excel中遇到任何问题,都可以联系我。因为我可以给您提供好的,详细和耐心的数据分析服务。

如果你对Z检验,t检验,方差分析,多元方差分析,回归,卡方检验,相关,多水平模型,结构方程模型,中介调节,量表信效度等等统计技巧有任何问题,请私信我,获取详细和耐心的指导。

If you are a student and you are worried about you statistical #Assignments, #Data #Analysis, #Thesis, #reports, #composing, #Quizzes, Exams.. And if you are facing problem in #SPSS, #R-Programming, #Excel, Mplus, then contact me. Because I could provide you the best services for your Data Analysis.

Are you confused with statistical Techniques like z-test, t-test, ANOVA, MANOVA, Regression, Logistic Regression, Chi-Square, Correlation, Association, SEM, multilevel model, mediation and moderation etc. for your Data Analysis...??

Then Contact Me. I will solve your Problem...

加油吧,打工人!

猜你喜欢:

R数据分析:逻辑斯蒂回归与泊松回归

R数据分析:多分类逻辑回归

R数据分析:多元逻辑斯蒂回归的做法

R数据分析:线性回归的做法和优化实例

R数据分析:如何做逻辑斯蒂回归

python机器学习:线性回归中的哑变量转换

Python机器学习入门:线性回归实例操练

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

推荐阅读更多精彩内容