如何使用 dplyrs 连接函数在 R 中通过 OR 语句连接 2 个表?
例如。使用以下密钥将 df1 加入到 df2 上:
df1_ColumnA == df2_ColumnA 或 df1_ColumnA == df2_ColumnB?
library(dplyr)
df1 = data.frame(V1 = c('A', 'B', 'C','D'), v2 = c(1,2,3,4))
df2 = data.frame(VA = c('A', 'B', 'C'), VB = c('D', 'E', 'F'), vC = c(4,5,6))
## Join on column 1
df3 = df1 %>% left_join(df2, by = c('V1' = 'VA'))
## join on column 1 AND column 2
df4 = df1 %>% left_join(df2, by = c('V1' = 'VA', 'V1' = 'VB'))
这是行不通的:
## join on column 1 OR column 2
df4 = df1 %>% left_join(df2, by = c('V1' = 'VA' | 'V1' = 'VB'))
编辑:预期输出
V1 v2 VA VB vC
1 A 1 A D 4
2 B 2 B E 5
3 C 3 C F 6
4 D 4 A D 4