问题标签 [party]

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 回答
564 浏览

r - 强制决策树进入最小度数

即使先前被丢弃,决策树是否可以强制达到特定程度?

我尝试使用派对包 (ctree)构建决策树,但它被设置的参数/类别忽略。有没有办法将决策树包含在所有设置的类别中(即使结果很接近)?我想强制树的节点数最少

例如,在附加图中,有 7 个节点。我想强制树有 10 个节点。这个有可能?

谢谢!

虹膜的最佳树

0 投票
1 回答
623 浏览

r - 如何在 R 中获取 rpart (CART) 决策树的属性?

我有以下rpart:

我想获取每个拆分节点及其值并按以下顺序编写它们:

其中每个级别与其更高级别由 { 分隔。我想做的和这里的 J48 非常相似。

0 投票
1 回答
552 浏览

r - 提取partykit中终端节点的信息:ctree具有大量多元响应

我正在使用partykit:ctree 来探索我的数据集,该数据集包含大约 15,000 个海滩调查,调查了从 50 个不同类别中发现的碎片数量。数据中有很多零,并且碎片总量分布很大。我还有一系列自变量,包括一些因素,一些计数数据,还有一些连续数据。

这是一个非常小的样本数据集:

我使用以下代码对数据进行分区:

这产生了一个可爱的图表,但我如何提取每个终端节点的成员资格?如果只有几个项目,我可以在图表中看到它,但是一旦可能的类别数量增加到 50,就很难以图形方式查看它。我想查看节点中包含的信息;特别是每个终端节点中包含的每个单独类别的相对概率。

我知道如果这是一个 BinaryTree 类,我可以使用节点参数,但是当我查询类(M.2)时,它告诉我它来自 constaparty 类,我无法找到如何获取来自此类的节点信息。

我还遇到了一个次要问题,那就是当我在我的样本数据集上运行 ctree 时,它​​每次都会崩溃 R!它适用于我的实际数据集,但我无法弄清楚样本集有什么问题。

编辑:所需的输出将类似于以下内容:

节点 15:
硬塑料 30
玻璃 5
软塑料 23
塑料袋 6
碎片 12

0 投票
1 回答
618 浏览

r - varimp(R 方)仅返回零

varimp()我对派对包中的功能行为感到困惑。

我正在使用条件随机森林来获得 Strobl 等人的变量重要性。2009 年的建议。

它适用于我所有的数据集,但只有一个。我必须将我的观察进行子集化。但是,即使条件随机森林在完整数据集上正常运行,它也只为子集返回零......并且似乎根本不运行,但不会产生错误。

我想知道预测变量的数量是否太多,只能进行少量观察,并尝试仅使用有限数量的预测变量,但它给了我相同的结果。正如在其他情况下指出的那样,它似乎也没有链接到变量类型......

我显然错过了一些东西,但我就是不知道是什么......

如果有人对我应该关注的方向有所了解,我将不胜感激。

我的数据在这里

0 投票
1 回答
459 浏览

r - cforest:当 newdata 是单行数据帧时,预测错误

您好,我正在使用包partykit及其功能cforest来拟合模型。我还可以使用predict基于多行数据帧的预测。但是,我无法预测只有一行的数据框。

错误信息是:

预测(obj,newdata=df[5,])向量中的错误(模式 =“列表”,长度 = ncol(w)):无效的“长度”参数

0 投票
1 回答
971 浏览

r - 将 mob() 树(partykit 包)与 nls() 模型一起使用

我正在尝试将基于模型的递归分区(MOB)与mob()函数(来自partykit包)一起使用,以分离使用该nls()函数派生的几条曲线。我必须定义我的模型并确定起始值。我一直在尝试查看是否可以将其与该mob()功能一起使用,但无济于事。

我尝试在第 7 页上遵循此示例: https ://cran.r-project.org/web/packages/partykit/vignettes/mob.pdf 我创建了一个拟合函数来估计起始值并返回估计值等nls(). _ 但在那之后我似乎什么也做不了。我想知道是否可以使用带有系数以及因变量和自变量的自定义模型,并将它们包含在内mob()并使其正常工作。我试过这个lmtree()功能,但当然这只会给出一条直线。

我的代码如下。基本上,我使用分段线性回归来获取我正在使用的双指数曲线的起始值。这基本上是我得到的最远的。参数估计会给出错误等,如果你甚至超过它就不会运行。我只需要知道该mob()功能是否可以运行nls()

我加载了示例数据,但如果可以使用nls()

这是我的示例数据:

0 投票
1 回答
193 浏览

r - ctree 显示 3 个目标值且没有标签(来自 2 个值目标因子)

非常简单的数据框:

获取ctreeTYPE 变量的分类时:

似乎出现了 3 个标签,但无法确定,因为标签没有写在情节下方的末尾。

ctree 图

如果我只有两个(是,否),为什么要 3 个结束状态?为什么标签不存在?

0 投票
1 回答
853 浏览

r - 如何将“RWeka”决策树转换为 R 中的“派对”树?

我正在使用 R 中的 RWeka 包将 M5' 树适合使用“M5P”的数据集。然后我想将生成的树转换为“派对”树,以便我可以访问变量重要性。as.party我遇到的问题是,如果没有出现以下错误,我似乎无法使该功能正常工作:

仅当我在 for 循环中应用该函数时才会出现此错误,但 for 循环是必要的,因为我正在运行 5 折交叉验证。

下面是我一直在运行的代码:

0 投票
1 回答
1387 浏览

r - R C5.0 获取每片叶子的规则和概率

我认为在我研究解决这个问题的过程中,我非常接近。我正在为C5.0 包寻找类似的东西。

SO答案中提供的方法适用于party对象。但是 C5.0 包不支持as.party. 在我进一步的研究中,我发现这个评论说 C5.0 包的维护者已经编写了这个函数,但没有导出它。

我认为这应该可以工作,但不幸的是,建议的函数C50:::as.party.C5.0(mod1)会引发错误:

任何解决此错误的建议表示赞赏。让我们使用以下示例:

0 投票
2 回答
365 浏览

r - 决策树方包预测错误 - 级别不匹配

我正在使用派对包在 R 中构建 CART 回归树模型,但是当我尝试将模型与测试数据集应用时,我收到错误消息说级别不匹配。

在过去的一周里,我一直在阅读论坛上的帖子,但仍然找不到解决我问题的正确方法。所以我在这里使用我编造的假例子重新发布这个问题。有人可以帮助解释错误消息并提供解决方案吗?

我的训练数据集有大约 1000 条记录,测试数据集有大约 150 条记录。两个数据集中都没有 NA 或空白字段。

我在派对包下使用 ctree 的 CART 模型是:

mytree<- ctree(Rate~Bank+Product+Salary, data=data_train)

数据训练示例:

数据测试示例:

我尝试使用以下代码设置为同一级别:

但是,当我尝试对测试数据集运行预测时,出现以下错误:

我也尝试了以下方法,但它改变了我的测试数据集的字段......:

级别(data_test$Bank)<-级别(data_train$Bank)

data_test 表已更改: