Как выполнить несколько левых объединений с использованием dplyr в R Как присоединиться к нескольким кадрам данных в R с помощью dplyr? new <- left_join(x,y, by = "Flag") это код, который я использую для левого соединения x и y код не работает для нескольких соединений new <- left_join(x,y,z by = "Flag") Ответ 1 Вы можете использовать вложенный left_join left_join(x, y, by='Flag') %>% left_join(., z, by='Flag') Или другой вариант должен разместить все наборы данных в list и использовать merge из base R с помощью Reduce Reduce(function(...) merge(..., by='Flag', all.x=TRUE), list(x,y,z)) Или мы имеем join_all из plyr. Здесь также помещаем dataframes в list и используем аргумент type='left' для левого соединения. library(plyr) join_all(list(x,y,z), by='Flag', type='left')
Ответ 1 Вы можете использовать вложенный left_join left_join(x, y, by='Flag') %>% left_join(., z, by='Flag') Или другой вариант должен разместить все наборы данных в list и использовать merge из base R с помощью Reduce Reduce(function(...) merge(..., by='Flag', all.x=TRUE), list(x,y,z)) Или мы имеем join_all из plyr. Здесь также помещаем dataframes в list и используем аргумент type='left' для левого соединения. library(plyr) join_all(list(x,y,z), by='Flag', type='left')