【问题标题】:Splits and Root node of binary decision tree(CART)二叉决策树(CART)的分裂和根节点
【发布时间】:2012-10-12 06:23:57
【问题描述】:

如何在回归树中找到拆分和根节点,我从多个向量制作回归树现在我必须提取多个向量的 rpart 的根节点。文件包含多个向量的数值A,@987654323 @,C,D,E,F,G,H ex.一个向量包含 4,3,6,7,2,4,5,...等类似其他 B,C,D,E,F,G,H .so 想要提取 F (这是一个在我的情况下,根节点)作为此输入的输出,在创建树之后。谢谢。抱歉无法放置任何图像:(

这是我到目前为止所做的

log_data <- read.csv(file="C:\\Users\\AASHU\\Desktop\\CART\\syn.csv",
                      header=T, as.is=T)
library(rpart)

fit <- rpart(A ~ B+C+D+E+F+G+H, log_data)
# plot(fit)
plot(fit, compress=TRUE, branch=0)
text(fit, xpd = NA, cex = 0.7)

summary(fit)
Call:
rpart(formula = A ~ B + C + D + E + F + G + H, data = log_data)
n=52 (1 observation deleted due to missingness)

          CP nsplit rel error   xerror      xstd
1 0.09798662      0 1.0000000 1.065250 0.1888568

2 0.09347624      1 0.9020134 1.198999 0.1842667

3 0.03632980      2 0.8085371 1.154558 0.1859743

4 0.02297130      3 0.7722073 1.254874 0.2029423

5 0.01000000      4 0.7492360 1.274024 0.2118272

Node number 1: 52 observations,    complexity param=0.09798662

 mean=4.403846, MSE=1.509985 

 left son=2 (7 obs) right son=3 (45 obs)

 Primary splits:

F < 5.5 to the right, improve=0.09798662, (0 missing)

………… 现在我必须从拟合(回归树)及其拆分中提取根节点F(F&gt;=5.5),有人可以帮我吗?

【问题讨论】:

  • 添加一些示例数据以便人们可以使用此代码可能会增加您获得答案的机会。因此,要么提供syn.csv 的一部分,要么任意创建虚拟数据。 dput 可以非常有用地将您的数据转换为可以轻松恢复的文本表示形式,从而使您的整个代码剪切为 SSCCE
  • 谢谢下次会记住SSCCE。
  • 斯文感谢他编辑得这么好。

标签: r tree rpart cart-analysis


【解决方案1】:

找到那棵树的标签,以便我们可以提取任何向量

当根节点是字符时(例如-A)

nodes<-labels(fit, digits=4, minlength=1L, pretty, collapse=TRUE)
root<-substr(nodes[2], 1, 1)

路径我们可以提取一棵树的根节点,下面最好通过第二次拆分来提取根节点名称,这只是一个根节点。

nodes<-labels(fit, digits=4, minlength=1L, pretty, collapse=TRUE)
path<-path.rpart(fit, node_no, pretty=0, print.it=FALSE) 
path[[2]][1]

【讨论】:

    猜你喜欢
    • 2018-09-27
    • 2013-01-07
    • 1970-01-01
    • 2018-06-15
    • 2016-05-05
    • 2017-05-22
    • 2015-01-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多