У меня есть два кадра данных (df1 и df2), и я хочу объединить их в один df со столбцами «GEO», «POP», «Value», «Mean», не соответствующие строки должны быть назначены с помощью «NA»
> df1
GEO Value POP
1 Belgium 986494 Adolescents
2 Denmark 542496 Adolescents
3 Finland 472801 Adolescents
4 France 6568728 Adolescents
5 Germany 6177477 Adolescents
6 Italy 4564035 Adolescents
7 Netherlands 1608971 Adolescents
8 Spain 3550102 Adolescents
9 United Kingdom 5815087 Adolescents
10 Belgium 6910856 Adults
11 Denmark 3423077 Adults
12 Finland 3318043 Adults
13 France 39536853 Adults
14 Germany 50839124 Adults
15 Italy 37609721 Adults
16 Netherlands 10467463 Adults
17 Spain 29722963 Adults
18 United Kingdom 39436511 Adults
> df2
GEO POP Mean
1 Belgium Adolescents 1221.75
2 Denmark Adolescents 2669.66
3 Finland Adolescents 1378.44
4 France Adolescents 2293.82
5 Germany Adolescents 2412.83
6 Italy Adolescents 1282.08
7 Netherlands Adolescents 1431.87
8 Spain Adolescents 5410.47
9 United Kingdom Adolescents 1026.75
10 Belgium Adults 1567.43
11 Denmark Adults 4241.10
12 Finland Adults 3938.95
13 France Adults 3231.94
14 Germany Adults 1840.54
15 Italy Adults 1337.15
16 Netherlands Adults 4157.15
17 Spain Adults 3897.04
Мне нужно объединить их в одну ДФ! Я попробовал какую-то функцию с dplyr:
bind_rows(df1,df2)
- Проблемы: у них разные длины! Поэтому я попробовал INTERSECT
intersect(df1, df2)
Error: not compatible:
- Cols in y but not x: `Value`.
- Cols in x but not y: `Mean`.
Я также попытался присоединиться к
left_join(df1,df2, by "GEO", "POP")
, но это возможно только одним общим столбцом, и у меня будет два столбца / GEO и POP), которые необходимо учитывать в процессе объединения. У вас есть идея?