在R中,我将使用rpart函数创建决策树。我知道使用rpart.control参数可以让我对决策树进行大量控制。 那么,我该如何控制分割节点的数量?具体来说,我想控制从一个节点延伸的分支数。这是我的代码。
german<-read.csv("http://freakonometrics.free.fr/german_credit.csv", header=TRUE)
F=c(1,2,4,5,7,8,9,10,11,12,13,15,16,17,18,19,20,21)
for(i in F) german[,i]=as.factor(german[,i])
str(german)
library(caret)
set.seed(1000)
intrain<-createDataPartition(y=german$Creditability, p=0.7, list=FALSE)
train<-german[intrain, ]
test<-german[-intrain, ]
control_parameter<-rpart.control(maxdepth = 5)
rpartmod<-rpart(Creditability~. , data=train, control = control_parameter,method="class")
rpart.plot(rpartmod)
text(rpartmod)
- 其他评论
我想制作分类树。所以我将目标变量转换为因子类型。并且有许多因子变量。因此,当我执行修剪时,分支数将是每个因子的级别数。因此,在考虑因子类型变量时,我想控制分裂的数量。