Новый фрейм данных путем сопоставления имен столбцов двух фреймов данных в R

#dataframe #merge #match #multiple-columns

Вопрос:

У меня есть два фрейма данных, например

 df1 <- data.frame(A = c(1,2), B=c(3,4), C=c(5,6), D=c(7,8))
df2 <- data.frame(B = c(1,3), A = c(5,6), F = c(1,0), G = c(2,4))
 

df1 и df2 имеют одни и те же имена столбцов, но не в одном порядке. Я хочу создать новый фрейм данных df3, который будет использовать те же имена столбцов df1 и df2 и сохранит оба значения. Ожидаемый результат должен выглядеть следующим образом

 df3 = data.frame(A = c(1.5, 2.6), B = c(3.1,4.3))
 

Этот df3 содержит два столбца A и B, полученные из df1 и df2, и сохраняет значения. На самом деле то, что я хочу в записях столбца df3, — это A = c((1,5), (2,6)), B = c((3,1), (4,3)). Используя это представление, например, в столбце A, у меня есть (1,5), означающее, что 1 из df1, а 5 из df2. Пожалуйста, помогите. Кстати, мой фактический фрейм данных содержит сотни столбцов.