當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。