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


R recipes step_indicate_na 创建缺失数据列指示器


step_indicate_na() 创建配方步骤的规范,该步骤将创建附加二进制列并将其附加到数据集以指示缺少哪些观测值。

用法

step_indicate_na(
  recipe,
  ...,
  role = "predictor",
  trained = FALSE,
  columns = NULL,
  prefix = "na_ind",
  keep_original_cols = TRUE,
  skip = FALSE,
  id = rand_id("indicate_na")
)

参数

recipe

一个菜谱对象。该步骤将添加到此配方的操作序列中。

...

一个或多个选择器函数用于为此步骤选择变量。有关更多详细信息,请参阅selections()

role

对于此步骤创建的模型项,应为其分配什么分析角色?默认情况下,此步骤根据原始变量创建的新列将用作模型中的预测变量。

trained

指示预处理数量是否已估计的逻辑。

columns

所选变量名称的字符串。该字段是一个占位符,一旦使用 prep() 就会被填充。

prefix

将作为结果新变量的前缀的字符串。默认为"na_ind"。

keep_original_cols

将原始变量保留在输出中的逻辑。默认为 FALSE

skip

一个合乎逻辑的。当bake() 烘焙食谱时是否应该跳过此步骤?虽然所有操作都是在 prep() 运行时烘焙的,但某些操作可能无法对新数据进行(例如处理结果变量)。使用skip = TRUE时应小心,因为它可能会影响后续操作的计算。

id

该步骤特有的字符串,用于标识它。

recipe 的更新版本,将新步骤添加到任何现有操作的序列中。

整理

当您tidy()此步骤时,将返回包含列terms(选择的选择器或变量)和model(中值)的小标题。

箱重

底层操作不允许使用案例权重。

例子

data("credit_data", package = "modeldata")

## missing data per column
purrr::map_dbl(credit_data, function(x) mean(is.na(x)))
#>       Status    Seniority         Home         Time          Age 
#> 0.0000000000 0.0000000000 0.0013471037 0.0000000000 0.0000000000 
#>      Marital      Records          Job     Expenses       Income 
#> 0.0002245173 0.0000000000 0.0004490346 0.0000000000 0.0855410867 
#>       Assets         Debt       Amount        Price 
#> 0.0105523125 0.0040413112 0.0000000000 0.0000000000 

set.seed(342)
in_training <- sample(1:nrow(credit_data), 2000)

credit_tr <- credit_data[in_training, ]
credit_te <- credit_data[-in_training, ]

rec <- recipe(Price ~ ., data = credit_tr)

impute_rec <- rec %>%
  step_indicate_na(Income, Assets, Debt)

imp_models <- prep(impute_rec, training = credit_tr)

imputed_te <- bake(imp_models, new_data = credit_te, everything())
源代码:R/indicate_na.R

相关用法


注:本文由纯净天空筛选整理自Max Kuhn等大神的英文原创作品 Create Missing Data Column Indicators。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。