如何基于每个数据框中具有不同名称的两列将两个数据框与 dplyr 连接起来? [复制]
Posted
技术标签:
【中文标题】如何基于每个数据框中具有不同名称的两列将两个数据框与 dplyr 连接起来? [复制]【英文标题】:How to join two dataframes with dplyr based on two columns with different names in each dataframe? [duplicate] 【发布时间】:2018-04-29 07:43:39 【问题描述】:这是一个非常简单的问题,但在这里找不到合适的答案。
如何根据每个data.frame中不同名称的两列将两个data.frame与dplyr
连接起来?
base::merge
可以简单地merge
:
df3 <- merge(df1, df2, by.x=c("name1", "name2"), by.y=c("name3", "name4"))
df1$name1 == df2$name3
和 df1$name2 == df2$name4
的位置。
如何在dplyr
中做到这一点?
我知道可以使用dplyr
中的by
函数来连接两个基于不同名称的列的data.frame:
df3 <- dplyr::left_join(df1, df2, by=c("name1" = "name3"))
【问题讨论】:
by = c("name1" = "name3", "name2" = "name4")
应该可以吗?
dplyr.tidyverse.org/articles/two-table.html
【参考方案1】:
df3 <- dplyr::left_join(df1, df2, by=c("name1" = "name3", "name2" = "name4"))
【讨论】:
这也适用于自动装箱吗?以上是关于如何基于每个数据框中具有不同名称的两列将两个数据框与 dplyr 连接起来? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
在 pyspark 中比较不同数据框中的两列,分别为 String 和 Array<string> 类型