1

我想创建一个表格来总结条件推理树(ctree)的拆分规则,以便每个预测变量位于单独的列中,并且每一行都是一个终端节点,每个预测变量都有相应的值。例如:

IrisTree <- ctree(Species ~ ., data = iris)

这导致了这棵树:

虹膜数据上的 ctree

并以如下方式存储结果:

汇总表

另外,我想在最后一列中嵌入在终端节点处产生的每个图,但我正在努力寻找一种单独存储图的方法。可能吗?

4

1 回答 1

1

拆分规则

拆分摘要可以建立在(仍然未​​导出的)函数上.list.rules.party()

partykit:::.list.rules.party(IrisTree)
##                                                               2 
##                                           "Petal.Length <= 1.9" 
##                                                               5 
## "Petal.Length > 1.9 & Petal.Width <= 1.7 & Petal.Length <= 4.8" 
##                                                               6 
##  "Petal.Length > 1.9 & Petal.Width <= 1.7 & Petal.Length > 4.8" 
##                                                               7 
##                        "Petal.Length > 1.9 & Petal.Width > 1.7" 

有关拆分摘要的进一步处理,另请参阅以下答案:

绘制子树

通过适当地对树进行子集化,可以很容易地获得各个图。一般来说,如果tree是一个party对象,那么tree[i]就是party以 Node 为根的对象i。这些仍然可以像以前一样绘制。

因此,当仅选择和绘制一个终端节点时,这将为您提供该终端节点的面板:

plot(IrisTree[5])

鸢尾树的终端节点 5

于 2021-04-24T18:38:04.050 回答