- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想使用 recipes 创建一个食谱该软件包既可以估算缺失的数据,又可以添加指示哪些值缺失的指标列。如果有一个选项可以选择为原始数据框中的每一列包含一个指标列,或者只包含原始数据框中缺少数据的列的指标列,那也很好。我知道我可以很容易地用 来估算缺失值食谱 ,但是否有内置的方法来添加缺失的指标列?
例如,如果我有一个这样的数据框:
> data.frame(x = c(1, NA, 3), y = 4:6)
x y
1 1 4
2 NA 5
3 3 6
x y x_missing
1 1 4 FALSE
2 2 5 TRUE
3 3 6 FALSE
recipes::check_missing
的文档,有一个
columns
争论,
columns A character string of variable names that will be populated (eventually) by the terms argument.
terms
论据
check_missing
.
最佳答案
可以通过创建自定义步骤来做到这一点。遵循 vignettes 之一中描述的过程,创建定义步骤的函数,然后定义 prep
和 bake
自定义步骤的方法。
以下代码定义了创建缺失值指标的新步骤。添加了一个带有后缀 _missing
的新列附加到名称。
step_missing_ind <- function(recipe,
...,
role = NA,
trained = FALSE,
columns = NULL,
skip = FALSE,
id = rand_id("missing_ind")) {
terms <- ellipse_check(...)
add_step(
recipe,
step_missing_ind_new(
terms = terms,
trained = trained,
role = role,
columns = columns,
skip = skip,
id = id
)
)
}
step_missing_ind_new <- function(terms,
role,
trained,
columns,
skip,
id) {
step(
subclass = "missing_ind",
terms = terms,
role = role,
trained = trained,
columns = columns,
skip = skip,
id = id
)
}
print.step_missing_ind <- function(x, width = max(20, options()$width), ...) {
cat("Missing indicator on ")
cat(format_selectors(x$terms, width = width))
if (x$trained) cat(" [trained]\n") else cat("\n")
invisible(x)
}
prep.step_missing_ind <- function(x, training, info = NULL, ...) {
col_names <- terms_select(terms = x$terms, info = info)
step_missing_ind_new(
terms = x$terms,
trained = TRUE,
role = x$role,
columns = col_names,
skip = x$skip,
id = x$id
)
}
bake.step_missing_ind <- function(object, new_data, ...) {
for (var in object$columns) {
new_data[[paste0(var, "_missing")]] <- is.na(new_data[[var]])
}
as_tibble(new_data)
}
library(recipes)
data <- tribble(
~x, ~y, ~z,
1, 4, 7,
NA, 5, 8,
3, 6, NA
)
recipe(~ ., data = data) %>%
step_missing_ind(x, y, z) %>%
step_meanimpute(x, y, z) %>%
prep() %>%
juice()
#> # A tibble: 3 x 6
#> x y z x_missing y_missing z_missing
#> <dbl> <dbl> <dbl> <lgl> <lgl> <lgl>
#> 1 1 4 7 FALSE FALSE FALSE
#> 2 2 5 8 TRUE FALSE FALSE
#> 3 3 6 7.5 FALSE FALSE TRUE
关于r - 使用 tidymodels 配方包添加缺失的指标列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59939421/
我正在从数据库中提取元素详细信息,并编写一个动态 HTML 页面以在顶部打印这些元素详细信息。该页面的目的是在团队或其他 session 中记录有关元素的信息,我希望在元素详细信息之后的空间中出现线条
我正在开发一个涉及 native 代码的 android 项目,我正在尝试将 Kiss FFT 库与 NDK 一起使用。但是,我很难理解 Kiss FFT 使用的 makefile 下面列出的部分。谁
您可以通过brew install package1 package2安装多个自制程序公式。但是,如果您有一个文本文件,其中包含要安装的所有软件包。你会怎么做? brew install < pack
在尝试通过 Homebrew 安装 FreeTDS 时,我运行了 brew edit freetds .我编辑了文件。我想将 Recipe 文件 (freetds.rb) 恢复到它的原始状态,以防我在
今天我通过 homebrew 安装了 curl 公式,但在安装它(并重新采购 shell)后我注意到: % which curl /usr/bin/curl 事实上,brew install curl
我正在尝试用我自己的包构建 yocto 图像。我在 github 上有使用 cmake 的 OpenCV 代码。 我试图为其编写一个食谱,但遇到了很多错误。任何人都可以提示我的食谱中应包含哪些功能或参
有谁知道如何在食谱上使用此处文档重定向? test: sh <
我目前正在玩柯南。所以我创建了两个小项目:第一个项目是一个小型库“fcdk”:https://github.com/lmarzull/fcdk/tree/devel 第二个是一个包含 conan 和
我正在尝试制作一个 brew我的大学特有的编译器公式。 该软件包没有./configure , make , make install安装方式。相反,它只是要求您有 java和javac安装并执行以下
我在执行 procmail 配方时遇到了一些问题。 这是我到目前为止得到的: :0 * ^X-Loop: myemail@gmail\.com /dev/null :
我正在为基于 Makefile 的项目的 Bitbake 编写自定义配方。我们能够使用包中的所有文件创建 RPM,但我们无法找到安装前和安装后操作的方法。由于应用程序作为服务运行,我们希望在预安装步骤
我正准备为我正在开发的游戏开发我的第一个 Windows 安装程序。我听说过 NSIS 推荐,但我的需求很基本,我无法弄清楚到底需要什么。 我想要一个简短的 NSIS 脚本,它可以在“Program
我想在 Shiny 面板中显示 -LaTeX 格式的公式,但我找不到组合 textOutput 的方法与 withMathJax .我尝试了以下但没有奏效。任何帮助将不胜感激。 --ui.r ...
我正在尝试弄清楚如何说服 Yocto 使用我的本地 GIT 源而不是它使用的标准位置来构建 gcc。默认情况下,构建 GCC 的配方位于 meta/recipes-devtools/gcc/gcc_5
我在我正在编写的一些代码中看到了这种模式 e = {...} # a dictionary e["table"] = "users" e["timestamp"] = time.time() queu
我正在使用 Petalinux 工具生成 Linux 镜像。我已经为 PostgreSQL 添加了一个现有的配方。 我怎样才能改变配方,使数据位置不是/var/lib/postgresql,而是/va
我现在遇到了一个真正让我发疯的问题。我有一个用 C++ 编写的项目,它正在使用 pthread。我昨天用 Dev-C 编译了这个项目,一切都很完美。然而,今天,我收到了这个毫无意义的“目标‘proje
我正在开发一个食谱应用程序来帮助我妻子培养她的蛋糕爱好。这个想法是创建一个食谱数据库来保存她所有的蛋糕食谱。 每个食谱都有多种成分。每种成分都会有测量值(克、毫升、茶匙等),然后是数量。 我了解如何创
我想在图像构建过程中将文件夹及其内容复制到 yocto。对于这个过程,我使用以下配方 SUMMARY = "Installation Recipe" DESCRIPTION = "It install
我已经为 IFTTT channel 创建了触发器和操作。现在我想使用这些触发器和操作创建一个食谱,但我不想通过 Maker,而是使用 API 调用。用于创建食谱的 API 调用(在 Maker UI
我是一名优秀的程序员,十分优秀!