Объединить несколько кадров данных в определенном порядке R - PullRequest
0 голосов
/ 23 мая 2018

У меня есть 2 списка, содержащих по 5 фреймов данных в каждом, и они расположены в определенном порядке;

list_1<-list("A","B","C","D")

list_2 <-list(("Aa","Bb","Cc","Dd")

Мне нужно left_join A к Aa, B к Bb и так далеепоэтому уменьшить это не вариант, как я знаю.Любая помощь очень ценится.

Я хотя и об использовании lapply, но мне не удалось.

1 Ответ

0 голосов
/ 23 мая 2018

Поскольку мы присоединяемся к набору данных в соответствующем порядке, было бы хорошо использовать Map.Предполагая, что мы сохраняем имена объектов в виде строк в другом объекте ('list_1' или 'list_2'), лучше иметь его как vector вместо list, а затем выполнить mget, чтобы получить значенияобъекты

Map(function(x, y) merge(x, y, all.x = TRUE), mget(list_1), mget(list_2))

или с использованием tidyverse

library(tidyverse)
map2(mget(list_1), mget(list_2), left_join)

data

list_1<- c("A","B","C","D")
list_2 <- c("Aa","Bb","Cc","Dd")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...