如何基于每个数据框中具有不同名称的两列将两个数据框与dplyr连接起来?

wak*_*ake 0 merge r dataframe dplyr

这是一个非常简单的问题,但在这里找不到合适的答案。

一个如何将两个data.frame dplyr基于两个在每个data.frame中具有不同名称的列连接在一起?

有了base::merge一个可以简单merge

df3 <- merge(df1, df2, by.x=c("name1", "name2"), by.y=c("name3", "name4"))
Run Code Online (Sandbox Code Playgroud)

在哪里df1$name1 == df2$name3df1$name2 == df2$name4

如何做到这一点dplyr


我知道一个人可以使用该by函数dplyr来连接两个基于一个具有不同名称的列的data.frame:

df3 <- dplyr::left_join(df1, df2, by=c("name1" = "name3"))
Run Code Online (Sandbox Code Playgroud)

ama*_*hin 5

df3 <- dplyr::left_join(df1, df2, by=c("name1" = "name3", "name2" = "name4"))
Run Code Online (Sandbox Code Playgroud)