当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R recipes recipes_eval_select 使用特定于食谱的 tidyselect 语义评估选择


recipes_eval_select()tidyselect::eval_select() 的配方特定变体,增强了识别配方选择器的能力,例如 all_numeric_predictors() 。有关独特配方选择器的更多信息,请参阅selections

这是一个开发人员工具,仅适用于创建新的食谱步骤。

用法

recipes_eval_select(
  quos,
  data,
  info,
  ...,
  allow_rename = FALSE,
  check_case_weights = TRUE,
  call = caller_env()
)

参数

quos

说明选择的限制列表。这通常是步骤函数的 ... 参数,使用 rlang::enquos() 捕获并作为 terms 元素存储在步骤对象中。

data

用作评估选择的上下文的 DataFrame 。这通常是传递到步骤的 prep() 方法的 training 数据。

info

术语信息的 DataFrame 架,说明与配方选择器一起使用的每列的类型和角色。这通常是传递给步骤的 prep() 方法的 info 数据。

...

这些点用于将来的扩展,并且必须为空。

allow_rename

是否应该允许重命名语法c(foo = bar)?这很少需要,目前仅由 step_select() 使用。您的步骤不太可能需要重命名函数。

check_case_weights

选择案例权重是否会引发错误?默认为 TRUE 。这很少更改,仅在 juice()bake.recipe()update_role()add_role() 中需要。

call

当前运行函数的执行环境,例如caller_env() 。该函数将在错误消息中作为错误源被提及。有关详细信息,请参阅 rlang::abort() 的调用参数。

包含评估的选择的命名字符向量。名称始终与值相同,allow_rename = TRUE 除外,在这种情况下,名称反映用户选择的新名称。

也可以看看

例子

library(rlang)
data(scat, package = "modeldata")

rec <- recipe(Species ~ ., data = scat)

info <- summary(rec)
info
#> # A tibble: 19 × 4
#>    variable  type      role      source  
#>    <chr>     <list>    <chr>     <chr>   
#>  1 Month     <chr [3]> predictor original
#>  2 Year      <chr [2]> predictor original
#>  3 Site      <chr [3]> predictor original
#>  4 Location  <chr [3]> predictor original
#>  5 Age       <chr [2]> predictor original
#>  6 Number    <chr [2]> predictor original
#>  7 Length    <chr [2]> predictor original
#>  8 Diameter  <chr [2]> predictor original
#>  9 Taper     <chr [2]> predictor original
#> 10 TI        <chr [2]> predictor original
#> 11 Mass      <chr [2]> predictor original
#> 12 d13C      <chr [2]> predictor original
#> 13 d15N      <chr [2]> predictor original
#> 14 CN        <chr [2]> predictor original
#> 15 ropey     <chr [2]> predictor original
#> 16 segmented <chr [2]> predictor original
#> 17 flat      <chr [2]> predictor original
#> 18 scrape    <chr [2]> predictor original
#> 19 Species   <chr [3]> outcome   original

quos <- quos(all_numeric_predictors(), where(is.factor))

recipes_eval_select(quos, scat, info)
#>        Year         Age      Number      Length    Diameter       Taper 
#>      "Year"       "Age"    "Number"    "Length"  "Diameter"     "Taper" 
#>          TI        Mass        d13C        d15N          CN       ropey 
#>        "TI"      "Mass"      "d13C"      "d15N"        "CN"     "ropey" 
#>   segmented        flat      scrape     Species       Month        Site 
#> "segmented"      "flat"    "scrape"   "Species"     "Month"      "Site" 
#>    Location 
#>  "Location" 
源代码:R/selections.R

相关用法


注:本文由纯净天空筛选整理自Max Kuhn等大神的英文原创作品 Evaluate a selection with tidyselect semantics specific to recipes。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。