评论

收藏

[R语言] R语言回归模型中的训练集和测试集划分

编程语言 编程语言 发布于:2021-06-29 22:09 | 阅读数:405 | 评论:0

  训练集和测试集划分
set.seed(1234)
nn=0.8
data=iris
length(iris[,1])
sub<-sample(1:nrow(data),round(nrow(data)*nn))
length(sub)
data_train<-audit2[sub,]#取0.8的数据做训练集
data_test<-audit2[-sub,]#取0.2的数据做测试集
dim(data_train)#训练集行数和列数
dim(data_test) #测试集的行数和列数
建立回归模型
mode <- lm(a~.,data=data_train)# 线性回归模型
用回归模型做预测
predictmode=predict(lmodel,data_test)
str(newlmodel)
head(newlmodel)
table1=(newlmodel[,1]-data_test$Petal.Length)
aa=sum(abs(table1))
summary()
nn=aa/length(aa)  ##求得MAD值
plot(newlmodel,col = "black",pch = 1,type = "o",xlab = "x",ylab = "y", axes = FALSE)
lines(data_test$Petal.Length,col = "blue",pch = 1,type = "o")
  作出趋势图如下:蓝色表示预测值,黑色表示实际值
DSC0000.png
X值和Y值的参数合并传递
  Y=“Petal.Width”
X=c(“Sepal.Width”,“Petal.Width”,“Petal.Length”)
XY=union(X,Y)
print(XY)
[1] “Petal.Width” “Sepal.Width” “Petal.Length”
生成新的数据并建模
newdata <- data[,XY]
mode <- lm(Petal.Width~.,data=newdata)# 线性回归模型

  
关注下面的标签,发现更多相似文章