Скажите, что мне нужно 2 dfs
df_1 <- data_frame(dates = c(as.Date("2018-07-01"), as.Date("2018-06-01"), as.Date("2018-06-01"), as.Date("2018-06-01"), as.Date("2018-05-01")), x1 = c(10L, 11L, 21L, 21L, 13L), text1 = c("text a", "text b", "text c", "text d", "text e"))
df_2 <- data_frame(dates = c(as.Date("2018-07-01"), as.Date("2018-06-01"), as.Date("2018-05-01"), as.Date("2018-04-01")),x2 = c(10L, 21L, 22L, 23L),text2 = c("text aa", "text bb", "text cc", "text dd"))
Я знаю, что мог бы использовать функцию соединения в пакете plyr для сопоставления первой только с одной переменной
plyr::join(df_2, df_1, type = 'left', match = 'first', by = 'dates')
Но с 2 переменными, «даты» и «х», это вызовет ошибку:
plyr::join(df_2, df_1, type = 'left', match = 'first', by = c('dates' = 'dates', 'x2' = 'x1'))
Также я мог бы использовать left_join в dplyr с несколькими переменными
df_2 %>%
left_join(df_1, by = c('dates' = 'dates', 'x2' = 'x1'))
Но нет первого аргумента соответствия. Любая помощь, спасибо