У меня 428 наблюдений и 51 переменная. Я хочу вычислить дерево решений, но я хочу точно настроить параметры. Сначала я использовал данные тренировок, а затем хочу выбрать лучший мини-сплит и maxdepth.
Для этого я сделал al oop для мини-сплита и maxdepth.
for (i in 1:10){
for (j in 1:10){
predictions_summary_dt=data.frame()
mytree<- rpart(sales~.,data=data.training[,-c(4)],method="anova", control = list(minisplit= j, maxdepth=i))
prediction<-predict(mytree,newdata=data.validation[,-c(1,4)])
predictions_summary.dt=rbind(predictions_summary.dt,data.frame(obs=data.validation[,1],pred=prediction))
R2.mytree<-(cor(predictions_summary.dt$sales,predictions_summary.dt$pred))^2
R2.mytree
MSE.mytree<-mse(predictions_summary.dt$sales,predictions_summary.dt$pred)
MSE.mytree
MAE.mytree <- mean(abs(predictions_summary.dt$pred-predictions_summary.dt$sales))
MAE.mytree
MAPE.mytree<-mape(predictions_summary.dt$sales, predictions_summary.dt$pred)
MAPE.mytree
results_trees=rbind(results_trees,data.frame(R2.mytree,MSE.mytree,MAE.mytree,MAPE.mytree,i,j))
}
}
results_trees```
Как выбрать лучший мини-сплит и максимальную глубину? Есть ли способ выбрать? Лучший минисплит это тот, у кого ниже MSE? Или тот, что с нижним ксеррором?
Спасибо