问题标签 [r-recipes]

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

r - How to tune a tidymodels recipe parameter?

Description

I am trying to tune a custom parameter in a recipe but I am having trouble to do so. I was under the impression that this is only a matter of calling tune("variableID") in the recipe and then use tune_grid() with a grid that contains a column variableID.

However, this does not seem to work, so I came up with a reprex to illustrate my approach. Notice that tune_grid() does not even detect a tuning parameter. What am I doing wrong here?

Also I tried to research how other people do it but the only question I could find here that comes close to my problem is given here and there tune() was used like expected it to.

Reprex

Created on 2021-06-15 by the reprex package (v2.0.0)

Session info
0 投票
1 回答
151 浏览

r - Tidymodels:在日期列中估算缺失值?

这个问题是Tidymodels 的副本:在 Date 列中估算缺失值的正确方法是什么? 当问题结束时,我提供了一个reprex并再次提出问题。

我为 Date 列中的缺失值而苦苦挣扎。在我的预处理管道 ( recipe-object) 中,我使用该step_impute_knn函数填充所有日期列中的缺失值。不幸的是,我收到以下错误:

分配的数据 pred_vals 必须与现有数据兼容。?列 avg_begin_first_contract .x 发生错误无法将双精度转换为日期

这是reprex一个版本,我在多个列中估算值,包括一Date列。Date如果我只将值估算到列中,这对我来说并不重要。结果是一样的。下面有一个reprex,它没有通过错误,因为没有Date使用列。

以前有人遇到过这个问题吗?

这是reprex,它不会出现错误:

提前致谢!M。

0 投票
1 回答
95 浏览

r - 如何减小 r 中预处理配方对象的大小?

我正在使用 R recipes 包预处理数据集,进行 Yeo-Johnson 转换以使其更正态分布,然后进行缩放以使其标准化。之后我想减小配方对象的大小,我使用了 butcher 包。但这无济于事。我还尝试手动清理存储数据的“模板”,但大小仍然保持不变。知道如何减少存储和以后使用的大小吗?这是我面临的一个现实问题的示例:

reprex 包(v0.3.0)于 2021-06-17 创建

看来我无法减小尺寸,有人可以帮忙吗?

0 投票
1 回答
92 浏览

r - 将固定值更改为 tidymodels 中的变量列表

我想知道是否可以在我的配方中改变变量,获取变量列表并在找到 NA 时输入一个固定值(-12345)。

至今没有成功。

step_mutate_at_new 中的错误(terms = ellipse_check(...),fn = fn,trained =trained,:缺少参数“fn”,没有默认值

0 投票
1 回答
120 浏览

r - Missing data after step_naomit in fit_resamples

I am currently applying the following recipe and workflow in order to fit a Random Forest using 5 folds cross validation using fit_resamples. The workflow looks something like this:

When fitting the model I am prompted with the following failure message:

This looks limited to the one hot encoded columns and even with step_naomit(skip = TRUE). For this reason, I've erroneously thought that placing step_naomit after step_mutate would take care of it.

I am probably overlooking something fairly simple here, this is my first stab at {tidymodels} after a long R hyathus.

0 投票
1 回答
191 浏览

r - 将变量列表传递给 tidymodels 中的配方会导致模型错误

我有一个简单的方法来训练模型。我的分类变量会随着时间而变化,有时我希望将数字视为分类(邮政编码),因此我在包含它们的配方之前定义了一个列表。(只是为了争论,列表要长得多)

配方工作正常,然后训练我的模型(3 折),但出现错误。

是否有任何适当的方法可以将变量列表传递给配方而不会使模型崩溃?

代表

0 投票
1 回答
171 浏览

r - 错误:[fit_resamples()] 的第一个参数应该是模型或工作流

问题:

我正在关注 Julia Silge(此处链接)关于使用 tidymodels 和食谱的教程。我可以毫无问题地完成大部分工作,但是当我调用该fit_resamples()函数时,我得到了错误:Error: The first argument to [fit_resamples()] should be either a model or workflow.

我正在逐个字符地复制教程中的代码,一切运行良好,包括打印出来validation_splits。但是,一旦我打电话,fit_resamples()我就会收到上面的错误(链接到教程的相关部分)。如果有用,则输出rlang::last_error()为:

有谁知道这里发生了什么?我该如何解决?我的理解是,我传递给的第一个参数fit_resamples() 一个模型,即character ~ .,并且我已经将这个相同的模型传递给脚本前面的其他函数而没有问题。请参阅下面的代码(和数据)导致我的机器上的错误,以及我的 sessionInfo()。

可重现的例子:

我的sessionInfo()

0 投票
1 回答
150 浏览

r - 使用自定义范围(或值)在工作流集中调整配方

我正在尝试在 tidymodels 中使用 workflow_set() 函数来评估一批模型。我知道可以修改某些模型规范以更改搜索范围,例如,鉴于此规范:

我可以使用以下方法修改范围:

我的尝试是做同样的事情,但使用配方中的参数。例如:

其次是

但是,当我尝试在 workflow_set() 定义中使用它时,如果我使用类似的东西

结局“wf_set”失去了他原来的调整参数,已经改变了

有没有办法在所有 workflow_set 模型中添加配方的参数规范?

谢谢

0 投票
0 回答
122 浏览

r - 尝试将 tidymodels 配方从训练数据应用到 r 中的重新采样时出错?

我是tidymodels的新手,也有点新R。我正在尝试从 Youtube tidytuesday/Sliced Customer churn data 复制 David Robinson 的代码,但在对交叉验证数据/重新采样应用配方更改时遇到问题

问题:当我对训练数据执行step_mutate()时,它可以工作,但是当我对交叉验证的数据应用相同的配方时,它会给出错误: train_5foldsError: All of the models failed. See the .notes column.

重新创建问题(使用以下代码下载数据):

train_5fold交叉验证的重采样数据可从以下网址下载:https ://github.com/johnsnow09/covid19-df_stack-code/blob/main/train_5fold.RDS

代码:

错误:所有模型均失败。请参阅 .notes 列。

.notes我得到

交叉检查:


在视频中它为大卫罗宾逊工作的地方:

在此处输入图像描述

0 投票
1 回答
323 浏览

r - 使用 tidymodels 调整工作流集时如何正确设置参数网格?

我尝试使用 tidymodels 来调整带有配方和模型参数的工作流程。调整单个工作流程时没有问题。但是,当调整具有多个工作流的工作流集时,它总是会失败。这是我的代码:

我检查了wf_tune_list_finalize中的选项,它显示:

然后我调整这个工作流集:

详细消息表明我在工作流ds_rfds_xgb中的参数有问题:

结果是:

更重要的是,虽然no_rfno_xgb有调优结果,但是我发现这两个工作流中mtry的范围不是我上面设置的范围,也就是说参数范围设置步骤完全失败。我已按照https://www.tmwr.org/workflow-sets.htmlhttps://workflowsets.tidymodels.org/的教程进行操作,但仍然没有任何想法。

那么在调整工作流集时如何正确设置配方和模型参数呢?

我的代码中的train.csv在这里:https ://github.com/liuyifeikim/Some-data