Основываясь на следующих кадрах данных:Слияние как консолидация dataframes в R
df1<-data.frame(ast = c('MMM', 'ABT','AES'), aloc = c(0.4140585, 0.3599352,0.2260063))
df2<-data.frame(ast = c('MMM','ABT','AFL', 'AES','A'), aloc =c(0.2493530, 0.2478328, 0.1720778, 0.1702486, 0.1604878))
df3<-data.frame(ast = c('ABT','MMM','ADBE','AFL','AMD'), aloc =c(0.2578605, 0.2540922, 0.2183000, 0.1364096, 0.1333377))
Я хотел бы сделать что-то вроде слияния (хотя я не мог сделать это со слиянием), чтобы получить следующий результат:
# Df1 Df2 Df3
A NA NA 0.1604878
ABT 0.3599352 0.2478328 0.2578605
ADBE NA NA 0.2183000
AES 0.2260063 0.1702486 NA
AFL NA 0.1720778 0.1364096
AMD NA NA 0.1333377
MMM 0.4140585 0.2493530 0.2540922
Я думаю, что это самый элегантный; но я предпочитаю сначала переименовывать столбцы, поэтому слияния являются автоматическими: 'full_join (rename (df1, df1 = aloc), rename (df2, df2 = aloc))%>% full_join (переименование (df3, df3 = aloc)) ' – user295691
Другим вариантом (лучше для большего количества кадров данных) является' Уменьшить (function (...) full_join (..., by = "ast"), list (df1, df2, df3))%>% аранжировать (ast) ' –
Я бы поднял голову, если бы мог –