Je réalise que dplyr
v3.0 vous permet de joindre différentes variables:
left_join(x, y, by = c("a" = "b")
fera correspondre x.a
à y.b
Cependant, est-il possible de joindre une combinaison de variables ou dois-je préalablement ajouter une clé composite?
Quelque chose comme ça:
left_join(x, y, by = c("a c" = "b d")
pour correspondre à la concaténation de [x.a
et x.c
] à [y.b
et y.d
]
Vous pouvez passer un vecteur nommé de longueur supérieure à 1 à l'argument by
de left_join()
:
library(dplyr)
d1 <- data_frame(
x = letters[1:3],
y = LETTERS[1:3],
a = rnorm(3)
)
d2 <- data_frame(
x2 = letters[3:1],
y2 = LETTERS[3:1],
b = rnorm(3)
)
left_join(d1, d2, by = c("x" = "x2", "y" = "y2"))