【发布时间】:2023-02-01 16:32:27
【问题描述】:
我有两个数据框:
df1 <- data.frame(row1 = c("A", "A", "A", "B", "B", "B", "C", "C", "C"),
row2 = c("aa", "bb", "cc", "aa", "bb", "cc", "aa", "bb", "cc"),
row3 = c(1, 5, 7, 6, 8, 9, 3, 2, 4))
row1 row2 row3
1 A aa 1
2 A bb 5
3 A cc 7
4 B aa 6
5 B bb 8
6 B cc 9
7 C aa 3
8 C bb 2
9 C cc 4
和
df2 <- data.frame(row1 = c("A", "A", "B", "B", "B", "C", "C"),
row2 = c("aa", "bb", "aa", "bb", "cc", "aa", "cc"))
row1 row2
1 A aa
2 A bb
3 B aa
4 B bb
5 B cc
6 C aa
7 C cc
我想根据第 1 行和第 2 行为 df2 创建第 3 行。所需的输出如下所示:
row1 row2 row3
1 A aa 1
2 A bb 5
3 B aa 6
4 B bb 8
5 B cc 9
6 C aa 3
7 C cc 4
在我的真实数据框中,df2 有更多列(但应根据两个特定列添加 row3)。我也用 left join 尝试过(不幸的是没有保存我的方法)但这也不适用于我的实现。
我找到了很多“查找”的解决方案,但所有这些都只比较一列,我无法弄清楚两个如何比较多列。可能有一个简单的解决方案,但我被卡住了。谁能帮我这个?
【问题讨论】: