r - 如何获得 RPART 模型中树的深度?

标签 r tree rpart

假设我用 RPART 建立一个玩具树模型,我怎样才能得到树的深度?

library(rpart)
library(partykit)
fit=rpart(factor(am)~.,mtcars,control=rpart.control(cp=0,minsplit = 1))
plot(as.party(fit))

我知道如何计算叶子,对于二叉树,我们可以通过叶子的数量来近似深度,但它不直接是树的深度。

sum(fit$frame$var=="<leaf>")

最佳答案

rpart 有一个未导出的函数 tree.depth,它给出传递给它的节点编号向量中每个节点的深度。使用问题中的数据:

nodes <- as.numeric(rownames(fit$frame))
max(rpart:::tree.depth(nodes))
## [1] 2

关于r - 如何获得 RPART 模型中树的深度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40897081/

相关文章:

rpart 的结果是根,但数据显示信息增益

r - R中的三元热图

r - 如何仅使用 getSymbols 将多个收盘价下载到单独的 xts 文件中?

r - 使用knitr时如何从多个图中旋转一个图?

php - PHP 中的树问题

r - 使用 rpart 选择决策树修剪的 CP 值

r - 如何计算决策树的错误率?

r - 使用 gsub 转换模式

c++ - 给定一组点,找到与查询点曼哈顿距离最小的点

list - 构造函数不在范围/模式匹配解析错误中