从partykit绘制ctree
模型时,我知道它选择默认值以防止过度拟合过度生长的树木。此默认值有时会导致树过于简单。要使用后修剪技术,我想使用 ctree 制作一个可能完全成熟的过拟合树,然后再进行修剪。尝试许多不同的事情,但我的代码出错了。
这个关于使用所有变量制作树的堆栈溢出答案不是我想要的。我不一定想要所有变量,但我希望一棵树的最大深度尽可能地杂草丛生。
基本上,如何让树尽可能深入?
请参阅下面的代码和输出:
treemodel <- ctree(Species ~ ., iris)
plot(treemodel)
而且我使用包中的帮助 + 文档,但没有看到很多自定义选项。有希望的是控制参数,但文档不是很详细。通过在其他论坛上搜索,我尝试了以下方法:
treemodel <- ctree(Species ~ ., iris, control=mincriterion)
我也试过:
treemodel <- ctree(Species ~ ., iris, control="mincriterion")
但是这两个代码都会引发错误。错误:
if (sum(weights) < ctrl$minsplit) return(partynode(as.integer(id))) 出错:参数长度为零
我在 mac os 上使用partykit 1.1-1 和 r。