5折交叉验证的回归分析

w<-read.csv("C:\\Users\\Administrator\\Desktop\\mg.csv",header=T)
#样本的个数为1385,5折交叉验证
n=1385
zz1=1:n
zz2=rep(1:5,ceiling(1385/5))[1:n]
set.seed(100)
zz2=sample(zz2,n) #有放回抽样
NMSE=rep(0,5)
NMSE0=NMSE
for(i in 1:5){
  m=zz1[zz2==i]
  a<-lm(y~.,w[-m,]) #线性回归模型
  y0<-predict(a,w[-m,]) #对训练集集预测
  y1=predict(a,w[m,])  #对测试集预测
  NMSE0[i]=mean((w$y[-m]-y0)^2)/mean((w$y[-m]-mean(w$y[-m]))^2)
  NMSE[i]=mean((w$y[m]-y1)^2)/mean((w$y[m]-mean(w$y[m]))^2)
}
NMSE0=mean(NMSE0) #训练集的标准化均方误差
NMSE=mean(NMSE) 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值