安装AIC准则使用前进法后退法和逐步回归法进行变量选择的r语言代码

本文展示了如何在R语言中利用AIC(Akaike Information Criterion)准则,通过前进法、后退法和逐步回归法进行变量选择。通过分析提供的数据集,演示了这些方法在构建回归模型时如何选择最佳变量组合。
摘要由CSDN通过智能技术生成
setwd("C:/Users/IBM/Desktop/研一课程/2.2回归分析/回归作业")  #设定当前的工作目录
shuju=read.table("shuju.txt",header=T)
shuju   #读取数据
#采用AIC原则自动选择模型-前进法
shuju.reg1<- lm(y~.,data=shuju[,-1])
shuju.regforward2 <- step(shuju.reg1,direction="forward")#按照AIC原则自动选择模型
summary(shuju.regforward2)
#采用AIC原则自动选择模型-后退法
shuju.reg2<- lm(y~.,data=shuju[,-1])
shuju.regbackward2 <- step(shuju.reg2,direction="backward")#按照AIC原则自动选择模型
summary(shuju.regbackward2)
#采用AIC原则自动选择模型-逐步回归法
shuju.reg3<- lm(y~.,data=shuju[,-1])
shuju.regboth <- step(shuju.reg3,direction="both")#按照AIC原则自动选择模型
summary(shuju.regboth)


#计算方差扩大因子VIF
shuju.reg=lm(y~x1+x2+x3+x4+x5+x6+x7,data=shuju)
library(car)
vif(shuju.reg)#计算得方差扩大因子


#计算条件数condition index
X3<-cbind(shuju$x1,shuju$x2,shuju$x3,shuju$x4,shuju$x5,shuju$x6,shuju$x7)
CX<-cor(X3)#变换后所得的X'X其实就是相关系数阵
sqrt(kappa(CX,exact=T))#与SPSS的结果略有区别
eigen(CX)#求特征根和特征向量


#剔除一些不重要的解释变量
#先剔除x4
drop1(shuju.reg,scope="x4",test='F')
shuju.reg2 <- update(shuju.reg,~.-x4)
vif(shuju.reg2)
#再剔除x5
drop1(shuju.reg2,scope="x5",test='F&
变量选择是指在建立回归模型时,从所有可能的自变量选择出对因变量有显著影响的自变量,以建立一个较为简单且具有解释性的回归模型。常用的变量选择前进后退逐步回归前进是从一个空模型开始,每次向模型中加入一个自变量,直到不能再加入为止。具体步骤如下: 1. 从所有自变量选择一个与因变量最相关的自变量,建立一个只包含该自变量的模型。 2. 从剩余的自变量选择一个与因变量相关性最大的自变量,将其加入到模型中。 3. 重复第二步,直到不能再加入自变量为止。 后退前进相反,是从包含所有自变量的模型开始,每次剔除一个自变量,直到不能再剔除为止。具体步骤如下: 1. 从所有自变量中开始建立一个包含所有自变量的模型。 2. 计算在剔除任意一个自变量后回归方程所对应的AIC统计量的值,选出最小的AIC值所对应的需要剔除的变量。 3. 剔除该变量,重新建立回归模型,重复第二步,直到不能再剔除自变量为止。 逐步回归前进后退的结合,它既可以向模型中加入自变量,也可以从模型中剔除自变量。具体步骤如下: 1. 从所有自变量中开始建立一个空模型。 2. 每次向模型中加入一个自变量或剔除一个自变量,使得模型的AIC值最小。 3. 重复第二步,直到不能再加入或剔除自变量为止。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TJ统计

关注公众号:Java后端技术栈

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值