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


R recipes check_range 检查范围一致性


check_range 创建配方检查的规范,该规范将检查新数据中数值变量的范围是否发生更改。

用法

check_range(
  recipe,
  ...,
  role = NA,
  skip = FALSE,
  trained = FALSE,
  slack_prop = 0.05,
  warn = FALSE,
  lower = NULL,
  upper = NULL,
  id = rand_id("range_check_")
)

参数

recipe

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

...

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

role

由于没有创建新变量,因此此检查未使用。

skip

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

trained

... 中的选择器是否已由 prep() 解析的逻辑。

slack_prop

允许的松弛作为训练集中变量范围的比例。

warn

如果TRUE,检查失败时将抛出警告而不是错误。

lower

训练集中最小值的命名数值向量。在由 prep() 计算之前,这是 NULL

upper

训练集中最大值的命名数值向量。在由 prep() 计算之前,这是 NULL

id

此检查唯一的字符串,用于识别它。

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

细节

允许的松弛量由slack_prop 确定。这是长度为一或二的数字。如果长度为一,则在训练集范围的两端将使用相同的比例。如果长度为二,则其第一个值用于计算下端允许的松弛,第二个值用于计算上端允许的松弛。

整理

当您tidy()进行此检查时,将返回一个包含列terms(选择的选择器或变量)和value(平均值)的小标题。

也可以看看

其他检查:check_class()check_cols()check_missing()check_new_values()

例子

slack_df <- data_frame(x = 0:100)
#> Warning: `data_frame()` was deprecated in tibble 1.1.0.
#> ℹ Please use `tibble()` instead.
slack_new_data <- data_frame(x = -10:110)

# this will fail the check both ends
if (FALSE) {
recipe(slack_df) %>%
  check_range(x) %>%
  prep() %>%
  bake(slack_new_data)
}

# this will fail the check only at the upper end
if (FALSE) {
recipe(slack_df) %>%
  check_range(x, slack_prop = c(0.1, 0.05)) %>%
  prep() %>%
  bake(slack_new_data)
}

# give a warning instead of an error
if (FALSE) {
recipe(slack_df) %>%
  check_range(x, warn = TRUE) %>%
  prep() %>%
  bake(slack_new_data)
}
源代码:R/range_check.R

相关用法


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