r - 如何确保使用 case_when 的所有选项?
问题描述
我想根据 df 数据框中的答案重新编码一个变量。如果任务花费的时间少于 30 分钟,则此变量为 1,如果超过 30 分钟,则此变量为 0。我的数据中可能存在一些随机错误。如果在我的 case_when() 函数中没有使用来自 df 数据框的所有答案,我想写出一个错误,例如:“在你的 case_when() 函数中没有使用观察‘随机错误’。任何想法如何解决这个问题?我在考虑 unique(df$col1),然后以某种方式与 case_when() 函数中使用的观察结果进行比较。但我不知道如何在 dplyr::transmute 中执行此操作...
library(dplyr)
df <- data.frame(col1 = c("<30min", "31-60min", "61-120min", ">120min", NA, "random error"))
df2 <- df %>%
transmute(xxx = case_when(
col1 == "<30min" ~ 1,
col1 == "31-60min" | col1 == "61-120min" | col1 == ">120min" ~ 0,
TRUE ~ NA_real_)
)
)
df2
解决方案
==
我们可以利用而不是做多个%in%
library(dplyr)
df %>%
transmute(xxx = case_when(col1 == "<30min" ~ 1,
col1 %in% c("31-60min", "61-120min", ">120min") ~ 0,
TRUE ~ NA_real_))
推荐阅读
- google-cloud-platform - 谷歌云平台:在线预测超时
- ios - Google Firebase 无法在 iOS 应用程序 XCode 中运行。Auth.auth.signIn() 方法不起作用
- continuous-integration - CD 环境中 CI 管道出现缓慢步骤并将其影响降至最低
- html - 角度自动完成选项不与输入保持位置
- python - 在无服务器部署时自动安装依赖项
- python-3.x - 如何在 python(pandas) 中使用 .loc 搜索确切的单词?
- python - 使用 RNN 进行预测后,如何将我的预测转换为文本?
- java - 我想在单击 imageView 时打开 Adapter 类,但我得到 ActivityNotFoundException,还有其他方法吗?
- swift - 如何使用 NSMutableAttributedString 设置 UILabel(不是 UITextView)圆角背景?
- node.js - npm package-lock 文件是如何生成依赖树的?