前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言 逐步回归分析 AIC

R语言 逐步回归分析 AIC

作者头像
全栈程序员站长
发布2022-08-31 19:16:46
2.4K0
发布2022-08-31 19:16:46
举报

大家好,又见面了,我是你们的朋友全栈君。

逐步回归分析是以AIC信息统计量为准则,通过选择最小的AIC信息统计量,来达到删除或增加变量的目的。

R语言中用于逐步回归分析的函数 step() drop1() add1()

#1.载入数据 首先对数据进行多元线性回归分析

代码语言:javascript
复制
tdata<-data.frame(
  x1=c( 7, 1,11,11, 7,11, 3, 1, 2,21, 1,11,10),
  x2=c(26,29,56,31,52,55,71,31,54,47,40,66,68),
  x3=c( 6,15, 8, 8, 6, 9,17,22,18, 4,23, 9, 8),
  x4=c(60,52,20,47,33,22, 6,44,22,26,34,12,12),
  Y =c(78.5,74.3,104.3,87.6,95.9,109.2,102.7,72.5,
       93.1,115.9,83.8,113.3,109.4)
)
tlm<-lm(Y~x1+x2+x3+x4,data=tdata)
summary(tlm)

多元线性回归结果分析

R语言 逐步回归分析 AIC
R语言 逐步回归分析 AIC

通过观察,回归方程的系数都没有通过显著性检验

#2.逐步回归分析

代码语言:javascript
复制
tstep<-step(tlm)
summary(tstep)
R语言 逐步回归分析 AIC
R语言 逐步回归分析 AIC

结果分析:当用x1 x2 x3 x4作为回归方程的系数时,AIC的值为26.94

去掉x3 回归方程的AIC值为24.974;去掉x4 回归方程的AIC值为25.011……

由于去x3可以使得AIC达到最小值,因此R会自动去掉x3;

去掉x3之后 AIC的值都增加 逐步回归分析终止 得到当前最优的回归方程

R语言 逐步回归分析 AIC
R语言 逐步回归分析 AIC

回归系数的显著性水平有所提高 但是x2 x4的显著性水平仍然不理想

#3.逐步回归分析的优化

代码语言:javascript
复制
drop1(tstep)

结果分析

R语言 逐步回归分析 AIC
R语言 逐步回归分析 AIC

如果去掉x4 AIC的值从24.974增加到25.420 是三个变量中增加最小的

#4.进一步进行多元回归分析

代码语言:javascript
复制
tlm<-lm(Y~x1+x2,data=tdata)
summary(tlm)

结果分析

R语言 逐步回归分析 AIC
R语言 逐步回归分析 AIC

所有的检验均为显著

因此所得回归方程为y=52.57735+ 1.46831×1+ 0.66225×2.

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/142410.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档