GBO*_*BOT 5 r decision-tree rpart
假设训练数据是"果实",我将使用它来预测使用R中的CART模型
> fruit=data.frame(
color=c("red", "red", "red", "yellow", "red","yellow",
"orange","green","pink", "red",? ?"red"),
isApple=c(TRUE, TRUE, TRUE, FALSE, TRUE, FALSE,
FALSE,FALSE,FALSE,FALSE,TRUE))
> mod = rpart(isApple ~ color, data=fruit, method="class", minbucket=1)
> prp(mod)
Run Code Online (Sandbox Code Playgroud)
minbucket如果我们要使用minbucket= 2,3,4,5,那么有人可以解释在这个例子中绘制CART树的确切作用吗?
看我有2个变量color&isApple.颜色变量有绿色,黄色,粉红色,橙色和红色.Apple变量的值为TRUE或FALSE.在最后一个例子中,RED有三个TRUE和2个FALSE映射.红色值出现五次.如果我给minbucket = 1,2,3那么它就是分裂.如果我给minbucket = 4或5,那么虽然红色出现五次但没有发生分裂.
从rpart包的文档:
minbucket
任何终端节点中的最小观测数.如果只指定了一个minbucket或minsplit,代码可以根据需要将minsplit tominbucket*3或minbucket设置为minsplit/3.
设置minbucket为1是没有意义的,因为每个叶节点(根据定义)将对其进行至少一次观察.如果将其设置为更高的值(例如3),则意味着每个叶节点在该存储桶中至少有3个观察值.
值越小minbucket,您的CART模型就越精确.通过设置minbucket太小的值(例如1),您可能会面临过度拟合模型的风险.