微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我的拟合和修剪的树有相同的 mae

如何解决为什么我的拟合和修剪的树有相同的 mae

我有一些数据,我尝试使用回归树方法来预测 Y。我的拟合和修剪树得到了相同的 MAE。正因为如此,我开始怀疑了。他们可以有相同的 MAE 还是我的代码错误?任何人都可以帮忙吗?

在将某些列选择到我的变量中之前,我应该 na.omit 吗?现在我选择了某些列变量,然后我做了 na.omit。这些程序给出了不同的结果。

我想做 80/20 分割。我的代码在这些方面是否正确?

SP500_annual <- read_excel(XXXX)
sp <- SP500_annual
sp <- sp[,c(17,20,25,35,59,69:72,89,103:104,94)]
sp <- na.omit(sp)
set.seed(123)
train<- sp %>% mutate(id = row_number()) %>% sample_frac(.8,replace = F)
test <- sp %>% mutate(id = row_number()) %>% anti_join(train,by = 'id')
fit <- rpart(close_ave~.,data = train,method = "anova",control = rpart.control(minsplit =20))
printcp(fit)
rsq.rpart(fit)
plotcp(fit)
summary(fit)
plot(fit,uniform = TRUE,main="Regression Tree for SP500")
text(fit,use.n = TRUE,all=TRUE,cex=0.6)
pruned.fit <- prune(fit,cp=fit$cptable[which.min(fit$cptable[,"xerror"]),"CP"])

pic<- plot(pruned.fit,main="Pruned Regression Tree for SP500")
texprune <- text(pruned.fit,all = TRUE,cex=0.7)

mae1 <- mean(abs(test$close_ave-predict(fit,newdata=test)))
mae2 <- mean(abs(test$close_ave-predict(pruned.fit,newdata=test)))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。