我正在尝试根据每个中的2列合并两个数据帧。我想根据匹配的ID和Year列将Territory列和IDMate列从Data Frame 2合并到Data Frame 1。
数据框1:
ID Year
1 1 1998
2 2 2001
3 3 2005
4 4 2008
数据框2:
ID Year Territory IDMate
1 1 1998 A 22
2 1 1999 B 24
3 1 2000 C 25
4 2 2001 D 26
5 2 2002 E 27
6 3 2005 F 28
7 4 2008 G 29
目标是得到这个:
ID Year Territory IDMate
1 1 1998 A 22
2 2 2001 D 26
3 3 2005 F 28
4 4 2008 G 29
答案 0 :(得分:-1)
common< - intersect(data.frame1 $ col,data.frame2 $ col) data.frame2 [common,]
希望这能让你得到你想要的东西
答案 1 :(得分:-1)
您可以使用left_join
中的dplyr
:
library(dplyr)
res <- left_join(df1, df2, by = c("ID", "Year"))
# ID Year Territory IDMate
# 1 1998 A 22
# 2 2001 D 26
# 3 2005 F 28
# 4 2008 G 29