【发布时间】:2021-02-21 20:19:17
【问题描述】:
我正在使用 R 中包含以下字符列和值的单个数据框。
C1<-c("1","2","3","4","5")
C2<-c("x", "t", "u", "r", "j")
C3<-c("2","5","3","1","4")
C4<-c("3","1","NA", "2","5")
df<-data.frame(C1,C2,C3,C4)
我正在尝试编写将替换 C3 和 C4 中的值的代码,如下所示:
- 对于 C3 中的每个值,在 C1 中找到相同的值。
- 将 C3 中的值替换为 C2 中与 C3/C1 匹配的行中出现的值。在 C3 中,对于 例如,“2”(第一个值)将替换为“t”,“5”将替换为“j”,“3”将 替换为“3”等等。
- 对 C4 中的值重复相同的过程。
- 跳过任何在 C3 或 C4 中具有 NA 的单元格。
初始数据框如下所示:
最终的数据框应如下所示:
我还没有想出可以完成这项任务的代码(基础 R 或 Dplyr)。如果有人可以提供帮助,我将不胜感激。
谢谢!
这是一个新的 df,我尝试使用受访者提供的代码(例如 df[c("C3", "C4")]
我要退回 C3 C4 的所有 NA,但不明白为什么。 C3 和 C1 之间存在匹配项。
【问题讨论】:
标签: r