У меня 4 dataframes в списке L, как показано ниже:союз кадра данных в R
L[[1]]:
V1 V2
B C
A B
Z B
L[[2]]:
V1 V2
B D
A B
Z B
L[[3]]:
V1 V2
Z Y
X Z
N Z
L[[4]]:
V1 V2
Z J
X Z
N Z
Это приходят из графа с головкой C, D, Y, и J. Очевидно, С и D является из того же графика, то есть Y и J. Как слить C с D и Y с J, учитывая, что эти фреймы данных находятся в списке L?
То, что я думаю, состоит в том, чтобы перебирать список и попарно сравнивать. Если dfx пересекаются с dfy-слиянием. Кто-нибудь может помочь с R-кодом?
Edit: То, что я имею в виду, как это: Получить первый элемент, по сравнению с второй, если все в порядке, сливались и сохранить первый элемент, удалить второй элемент, переходим к следующему элементу до последнего. Повторяйте, пока оставшийся элемент не будет удален. При этом список будет состоять из оставшегося элемента, который был объединен. Кто-нибудь знает, как реализовать это в коде? Ожидаемый результат:
L[[1]]:
V1 V2
B C
B D
A B
Z B
L[[2]]:
V1 V2
Z Y
Z J
X Z
N Z
Каков ожидаемый результат? – akrun
Я ожидаю список слитых. В примере, который я дал, он будет списком с двумя элеменями, объединенными с C и D, а другой будет объединен с D и Y. – Bharata
Возможно, 'Reduce (function (...) merge (..., by = "V1"), list (mget (paste0 ("df", 1: 4)))) ' – akrun