r - 使用 ifelse 在 r 中创建新列
问题描述
我的代码是:
data$E<-ifelse(data$D==data$B, "b", ifelse(data$D==data$C, "c", "unknowwn"))
结果:
A B C D E
1 16 16 NA 16 b
2 20 NA 20 20 NA
3 24 NA NA 24 NA
但我想要的是:
A B C D E
1 16 16 NA 16 b
2 20 NA 20 20 c
3 24 NA NA 24 unknowwn
有谁知道如何解决这个问题?谢谢!
解决方案
data$E <- ifelse(!is.na(data$B) & data$D == data$B, "b",
ifelse(!is.na(data$C) & data$D == data$C, "c", "unknowwn"))
推荐阅读
- javascript - Babel 在主要 Node.js 应用程序之外无法工作
- html - Gzipping HTML 文件不会使它们加载得更快
- python-3.x - 记录不创建文件
- python - 展开具有相同元素的列表
- xcode - 如何在 iOS Xcode Swift Playground 上模拟暗模式
- vba - 如何将约会正文(包括所有格式)复制到电子邮件?
- sql - SQL SP 不工作,给出错误列名或提供的值的数量与表定义不匹配
- ios - 如何显示 AirPlay 菜单 SwiftUI
- reactjs - 使用循环反应上下文更新,但不适用于单个项目
- hyper-v - 安装并启用 Hyper-V