partykit:回归树-识别终端节点盒图中的异常值

时间:2018-12-20 18:01:57

标签: r tree party

使用以下代码创建的回归树具有所有终端节点的箱形图。箱形图显示了中值,IQR和离群值,这很好。

plot(as.party(tree), terminal_panel = node_boxplot)

但是,如何确定箱图中的异常值?我认为,既然已经创建了箱线图,应该相对容易地取出异常值,但是信息似乎并没有存储在树中。 我知道我可以按照树的路径来识别数据集中的离群值,但我想知道是否有更快的方法可以做到这一点。

1 个答案:

答案 0 :(得分:1)

由于您不提供数据,因此我将使用内置的cars数据。
没错,此信息似乎没有存储在树中。而且,该图没有提供有意义的回报。至少一种解决方法是使用boxplot重做盒形图,然后得到异常值。

library(rpart)
library(partykit)

CarTree = rpart(dist ~ ., data=cars)
PCT = as.party(CarTree)
P = plot(PCT, terminal_panel = node_boxplot)

BP = boxplot(cars$dist ~ PCT[1]$fitted[[1]])
BP$out
[1] 80