我有两个数据帧df1和df2 . df1> df2的大小 .
df1 -> A B C D E F
1 4-23-2015 abc dcv 0 0
2 5-23-2015 abc dcvm 1 0
3 4-24-2015 ab dcv 0 0
4 4-23-2014 abc dcv 0 0
df2 -> A B C D E F
1 4-23-2015 abc dcv 0 0
3 4-24-2015 abc dcv 0 0
9 4-23-2015 abc dcv 0 0
现在我想比较一下
df1$A with df2$A and df1$B with df2$B and when it is true then put df1$F =1. So my output for the above example will be
df1 -> A B C D E F
1 4-23-2015 abc dcv 0 1
2 5-23-2015 abc dcvm 1 0
3 4-24-2015 ab dcv 0 1
4 4-23-2014 abc dcv 0 0
列B是日期类型列,并且比较是行与行完成的 .
2 回答
这几乎是一种常见的假设,但是对于更清晰的输出和更快的性能,我建议
data.table
二进制左连接,并通过引用进行同步更新 . 就像是否则,一个简单的
merge(df1, df2, by = c("A", "B"), all.x = TRUE)
将显示哪些行匹配,但您需要删除不必要的列并相应地更新F
.根据你的例子,