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


R recipes step_integer 將值轉換為預定義的整數


step_integer() 創建配方步驟的規範,該步驟將根據原始數據值將新數據轉換為一組整數。

用法

step_integer(
  recipe,
  ...,
  role = "predictor",
  trained = FALSE,
  strict = TRUE,
  zero_based = FALSE,
  key = NULL,
  skip = FALSE,
  id = rand_id("integer")
)

參數

recipe

一個菜譜對象。該步驟將添加到此配方的操作序列中。

...

一個或多個選擇器函數用於為此步驟選擇變量。有關更多詳細信息,請參閱selections()

role

對於此步驟創建的模型項,應為其分配什麽分析角色?默認情況下,此步驟根據原始變量創建的新列將用作模型中的預測變量。

trained

指示預處理數量是否已估計的邏輯。

strict

值是否應作為整數返回(而不是雙精度)的邏輯。

zero_based

整數是否應從零開始並將新值附加為最大整數的邏輯。

key

包含為 terms 中包含的每個變量創建整數變量所需的信息的列表。在 prep() 訓練該步驟之前,這是 NULL

skip

一個合乎邏輯的。當bake() 烘焙食譜時是否應該跳過此步驟?雖然所有操作都是在 prep() 運行時烘焙的,但某些操作可能無法對新數據進行(例如處理結果變量)。使用skip = TRUE時應小心,因為它可能會影響後續操作的計算。

id

該步驟特有的字符串,用於標識它。

recipe 的更新版本,將新步驟添加到任何現有操作的序列中。

細節

step_integer 將從訓練集中確定每個變量的唯一值(不包括缺失值),對它們進行排序,然後為每個值分配整數。烘焙時,每個數據點都會轉換為其相應的整數或尚未見過的數據的零值(盡管請參閱上麵的 zero_based 參數)。缺失值傳播。

因子輸入按其水平排序。所有其他均按 sort 排序。

不管名稱如何,新值都會以數字形式返回,除非 strict = TRUE ,這會將結果強製為整數。

整理

當您 tidy() 此步驟時,將返回一個包含列 terms(選擇的選擇器或變量)和 value(帶有轉換鍵的列表列)的 tibble。

箱重

底層操作不允許使用案例權重。

例子

data(Sacramento, package = "modeldata")

sacr_tr <- Sacramento[1:100, ]
sacr_tr$sqft[1] <- NA

sacr_te <- Sacramento[101:105, ]
sacr_te$sqft[1] <- NA
sacr_te$city[1] <- "whoville"
#> Warning: invalid factor level, NA generated
sacr_te$city[2] <- NA

rec <- recipe(type ~ ., data = sacr_tr) %>%
  step_integer(all_predictors()) %>%
  prep(training = sacr_tr)

bake(rec, sacr_te, all_predictors())
#> # A tibble: 5 × 8
#>    city   zip  beds baths  sqft price latitude longitude
#>   <int> <int> <int> <int> <int> <int>    <int>     <int>
#> 1    NA    35     4     2    NA     0        0         0
#> 2    NA    62     3     2     0     0        0         0
#> 3    28    34     3     2    56     0        0         0
#> 4    34    51     3     1     0     0        0         0
#> 5    34    58     4     3     0     0        0         0
tidy(rec, number = 1)
#> # A tibble: 8 × 3
#>   terms     value             id           
#>   <chr>     <list>            <chr>        
#> 1 city      <tibble [37 × 2]> integer_3IckW
#> 2 zip       <tibble [68 × 2]> integer_3IckW
#> 3 beds      <tibble [5 × 2]>  integer_3IckW
#> 4 baths     <tibble [4 × 2]>  integer_3IckW
#> 5 sqft      <tibble [94 × 2]> integer_3IckW
#> 6 price     <tibble [95 × 2]> integer_3IckW
#> 7 latitude  <tibble [99 × 2]> integer_3IckW
#> 8 longitude <tibble [99 × 2]> integer_3IckW
源代碼:R/integer.R

相關用法


注:本文由純淨天空篩選整理自Max Kuhn等大神的英文原創作品 Convert values to predefined integers。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。