r - 根据条件创建新列
问题描述
我有 23 个数字列,但我只对一个数字感兴趣,其他数字将被编码为否。如果该列包含数字 3,它将被编码为是,而其他数字将是否。我该如何做到这一点?df 用于演示。谢谢你
id <- c(1:50)
c <- c(10:59)
d <- c(200:152, by=2)
e <- c(352:400, by=2)
df<-cbind.data.frame(id, c, d, c)
解决方案
您的示例代码需要一些调整,但我认为这是您的想法:
id <- c(1:50)
c <- c(10:59)
d <- seq(200, 152, by = -2)
e <- seq(from = 452, to = 500, by=2)
df<-cbind.data.frame(id, c, d, e)
这将获取带有字母“3”的记录
df[stringr::str_detect(df$c, "3") |
stringr::str_detect(df$d, "3") |
stringr::str_detect(df$e, "3") , ]
推荐阅读
- javascript - 如何在数据库中保存注册发布请求
- python - 根据另一个数据帧的匹配行和列填充数据帧中的值
- reactjs - 将 useEffect 与 React-redux 一起使用
- python - 如何将自定义数据集实现到 pytorch 项目
- gremlin - Gremlin Javascript 遍历永远不会解决
- java - Gradle 下载源失败
- python - 使用 Numpy 而不在数组中获得额外的维度
- python - 目标错误返回的食人者数字
- google-sheets - 如何将连续第 n 个单元格相乘以获得乘积?
- javascript - 如何根据Javascript中的给定数量递增地减少数组中的项目