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


R recipes step_discretize 離散數值變量


step_discretize() 創建配方步驟的規範,該步驟將數字數據轉換為具有大致相同數據點數量的箱的因子(基於訓練集)。

用法

step_discretize(
  recipe,
  ...,
  role = NA,
  trained = FALSE,
  num_breaks = 4,
  min_unique = 10,
  objects = NULL,
  options = list(prefix = "bin"),
  skip = FALSE,
  id = rand_id("discretize")
)

參數

recipe

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

...

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

role

由於沒有創建新變量,因此此步驟未使用。

trained

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

num_breaks

一個整數,定義對數據進行多少次切割。

min_unique

定義分箱尊嚴的樣本大小線的整數。如果(唯一值的數量) /(cuts+1) 小於 min_unique ,則不會發生離散化。

objects

一旦 prep() 訓練了配方,discretize() 對象就會存儲在這裏。

options

discretize() 的選項列表。為參數 x 設置默認值。請注意,在轉換多個變量時使用選項 prefixlabels 可能會出現問題,因為所有變量都會繼承這些值。

skip

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

id

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

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

整理

當您 tidy() 此步驟時,將返回包含列 terms(選擇的選擇器或變量)和 value(中斷)的小標題。

調整參數

此步驟有 2 個調整參數:

  • min_unique:唯一值閾值(類型:整數,默認值:10)

  • num_breaks :切割點數量(類型:整數,默認值:4)

箱重

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

也可以看看

其他離散化步驟:step_cut()

例子

data(biomass, package = "modeldata")

biomass_tr <- biomass[biomass$dataset == "Training", ]
biomass_te <- biomass[biomass$dataset == "Testing", ]

rec <- recipe(
  HHV ~ carbon + hydrogen + oxygen + nitrogen + sulfur,
  data = biomass_tr
) %>%
  step_discretize(carbon, hydrogen)

rec <- prep(rec, biomass_tr)
#> Warning: Note that the options `prefix` and `labels` will be applied to all variables
binned_te <- bake(rec, biomass_te)
table(binned_te$carbon)
#> 
#> bin1 bin2 bin3 bin4 
#>   22   17   25   16 

tidy(rec, 1)
#> # A tibble: 10 × 3
#>    terms      value id              
#>    <chr>      <dbl> <chr>           
#>  1 carbon   -Inf    discretize_hhrhR
#>  2 carbon     44.7  discretize_hhrhR
#>  3 carbon     47.1  discretize_hhrhR
#>  4 carbon     49.7  discretize_hhrhR
#>  5 carbon    Inf    discretize_hhrhR
#>  6 hydrogen -Inf    discretize_hhrhR
#>  7 hydrogen    5.20 discretize_hhrhR
#>  8 hydrogen    5.78 discretize_hhrhR
#>  9 hydrogen    6.05 discretize_hhrhR
#> 10 hydrogen  Inf    discretize_hhrhR
源代碼:R/discretize.R

相關用法


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