问题标签 [rpart]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
19596 浏览

r - 如何在R中修剪一棵树?

我正在使用 R 中的 rpart 进行分类。树模型由以下人员训练:

此树模型的准确度为:

我阅读了一个通过交叉验证修剪树的教程:

修剪树的准确率仍然相同:

我想知道我修剪的树有什么问题?以及如何在 R 中使用交叉验证来修剪树模型?谢谢。

0 投票
1 回答
2614 浏览

r - 如何处理“rpart”中的连续和离散变量 - 使用 R 的决策树?

我正在使用 R 中的包rpart创建一些决策树。我的数据集中有离散变量,如年龄、儿童数量。但是生成的决策树有这些变量 n 小数。这意味着,它被视为连续变量。

如何避免这种情况以及如何使这些变量在我的决策树中离散?

0 投票
0 回答
1721 浏览

r - R中的rpart包 - 决策树在每个叶节点中给出不正确的行数标签('n = ###')

我正在使用 R 中的 rpart 包从名为“myData”的数据框中创建决策树模型。它有 85,590 行。

决策树是使用这样的代码创建的(关键部分是'data = myData'):

decTree <- rpart(结果 ~ var1 + var2 + ..., data = myData, method = "anova", control = rpart.control(minsplit=30))

如果我绘制并标记此决策树的“叶”(终端)节点,我会在第一个节点的“左侧”得到 66,667 的初始分割,在右侧得到 18,923 的初始分割(总计行数为 85,590 ,正如预期的那样。)

plot(decTree) # 绘制树

text(decTree, use.n = TRUE) #标记树

创建此初始拆分的规则是 var1 < 1.5。

但是,如果我计算 myData 中 var1 < 1.5 的行数,我得到 79,518,而不是预期的 85,590(如果我计算 var1 >= 1.5 的行,我得到 6,072 的“补码”,而不是预计树中显示 18,923。)

长度(其中(myData$var1 < 1.5))

[1] 79518

我意识到你不可能自己重现这种行为(以前的 rpart 模型在节点数方面对我来说是正确的,所以不知道为什么我这次遇到了麻烦),但我希望有人以前遇到过这个问题,或者在我的代码中发现一些愚蠢的错误......

我尝试再次重新运行它,但仍然得到所有相同(不匹配)的叶子计数。

另外,我检查了 myData$frame,肯定不仅仅是“n = ...”标签是错误的;$frame 值与图中显示的值匹配(并且与我自己所做的计数不匹配。)

decTree$帧

最后,'var1' 值都不是 NA。IE:

长度(其中(is.na(myData$var1)))

[1] 0

0 投票
3 回答
5174 浏览

r - Rpart - NA 处理

我正在为 Rpart 包中的 NA 功能而苦苦挣扎。我得到了以下数据框(代码如下)

我正在尝试拟合做出完美预测的 Rpart 对象。逻辑规则应该是它预测:

  • 如果 VarA=1,预测=1
  • 如果 VarA=0,预测=0
  • 如果 VarA=NA,则使用 VarB(如果 VarB=0,预测=0)

但是,我正在努力寻找正确的代码,以正确的方式将 VarA 的 NA 值“传递给树”。我曾尝试使用usesurrogatesand na.control,但无济于事......请在下面找到我的代码。

PS。如果 VarA 可以读取,rpart 就可以工作,VarA=c(1,1,2,0,0,2)但不幸的是,对于我正在处理的更大数据框来说,这不是一个很好的解决方案......

0 投票
0 回答
330 浏览

r - 更多地控制 R 中的回归树

我希望对我的回归树有比 R 包 rpart 允许的更多的控制权。有谁知道R中是否有一个允许我指定以下内容的包:

  1. 每个节点允许的拆分数量(到目前为止,我似乎只能有 2 个拆分)
  2. 三通最大深度
  3. 前 n 次分裂
  4. 为了成为进一步分裂的候选者,叶子必须拥有的最小美元数(相对于观察值)。
0 投票
1 回答
364 浏览

r - R中的分类树

我对 R 完全陌生,我正在尝试利用分类树对一些数据进行分类。让我困惑的是要使用什么库。我应该使用 rpart 还是树?

0 投票
1 回答
5348 浏览

r - Interpret R output Rpart classification tree surrogate splits

I understand that this split send cases to the right child node based on a bmi value of < 21.51 and has a similar split to the primary variable (agree = 0.858) and a decent decrease in node impurity (adj=0.632).

I do not understand the (0 split) piece of the output? Also, if agreement had a value of 1, would this be suspicious?

Thanks!

0 投票
1 回答
177 浏览

r - RPART 输出中的标识级别

我有 4 组:敏感性、类别、范围、持续时间。这 4 个中的每一个都有 4 个级别。敏感度 - A、B、C、D 类别 - 1、2、3、4 程度 - 现场、局部、区域、泛区域 持续时间 - 短期、中期、长期、不可逆

我使用这些(总共有 256 个)的组合来获得严重性分类。有 7 个严重等级:S1、S2、S3、S4、S5、S6、N。

使用 RPART,我得到一棵 Duration=cd 作为第一个二进制中断的树。然后树左侧的下一个是 Sensitivity=ab。我如何知道 c 和 d 是哪个持续时间级别?我怎么知道 a 和 b 的灵敏度级别是什么?

谢谢!

0 投票
1 回答
920 浏览

r - mvpart 与 rpart 中的拆分规则

我想根据几个变量制作分类树来预测 1 种鸟类的存在/不存在。我知道 rpart 处理单变量分区,而 mvpart 处理多变量分区,但我想将 mvpart 用于我的单变量树,因为它的输出更灵活。有谁知道我不应该这样做的原因?rpart 和 mvpart 中的分割是否会不同,输入相同?

0 投票
1 回答
3737 浏览

r - rpart 包:将决策树保存为 PNG

我正在使用一个看起来像这样的脚本:

我不太熟悉 R 如何处理图像/绘图,但是有没有办法生成图像的 png 或 pdf 文件而不是 postscript 格式?我在一些教程中看到演示图像是 PNG 格式的,但它们都只显示了保存绘图的 post 方法。我必须在脚本之外转换图像吗?