попробовать semi_join
из пакета dplyr
.
Если вам нужны только строки dat_a
, которые соответствуют dat_b
, вы можете использовать:
library(dplyr)
dat_a %>% semi_join(dat_b, by = c("a", "b"))
Если - как в желаемом выводе - вы хотите, чтобы все столбцы dat_a
имели совпадение в dat_b
и все столбцы в dat_b
, которые совпадают в dat_a
try:
dat_a %>% semi_join(dat_b, by = c("a", "b"))
%>% bind_rows(dat_b %>% semi_joim(dat_a, by = c("a", "b")))