我有两个数据框。第一个看起来像

Country    Year  production
Germany    1996  11
France     1996  12
Greece     1996  15
UK         1996  17
USA        1996  24


第二个包含第一个数据框中的所有国家以及 2018 年的更多国家。看起来像这样
Country    Year   production
Germany    2018   27
France     2018   29
Greece     2018   44
UK         2018   46
USA        2018   99
Austria    2018   56
Japan      2018   66

我想合并两个数据框,最终表格应该是这样的:
Country    Year  production
Germany    1996   11
France     1996   12
Greece     1996   15
UK         1996   17
USA        1996   24
Austria    1996   NA
Japan      1996   NA
Germany    2018   27
France     2018   29
Greece     2018   44
UK         2018   46
USA        2018   99
Austria    2018   56
Japan      2018   66

我尝试了几个函数,包括 full_joinmergerbind ,但它们没有工作。有人有任何想法吗?

最佳答案

使用 dplyrtidyr ,您可以使用:

bind_rows(df1, df2) %>%
 complete(Country, Year)

   Country  Year production
   <chr>   <int>      <int>
 1 Austria  1996         NA
 2 Austria  2018         56
 3 France   1996         12
 4 France   2018         29
 5 Germany  1996         11
 6 Germany  2018         27
 7 Greece   1996         15
 8 Greece   2018         44
 9 Japan    1996         NA
10 Japan    2018         66
11 UK       1996         17
12 UK       2018         46
13 USA      1996         24
14 USA      2018         99

关于r - 在 R 中合并具有不同行的两个数据帧,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58646803/

10-12 20:11