R 根据列的值组合不同的数据帧

R 根据列的值组合不同的数据帧,r,dataframe,merge,R,Dataframe,Merge,我只是对R有点陌生,我必须和它一起工作。 我有两个数据帧:df1和df2 x | y | z | q x | y | w 1 | 00 | 1.99 | 5 1 | 00 | 1.34 1 | 10 | 2.05 | 11 1 | 12 | 1.69 1 | 12 | 1.89 | 9 2 | 15 | 2.99 1 | 20 | 1.75 | 7 2 | 0

我只是对R有点陌生,我必须和它一起工作。 我有两个数据帧:
df1
df2

x |  y |  z   | q                 x | y  |  w
1 | 00 | 1.99 | 5                 1 | 00 | 1.34
1 | 10 | 2.05 | 11                1 | 12 | 1.69
1 | 12 | 1.89 | 9                 2 | 15 | 2.99
1 | 20 | 1.75 | 7
2 | 05 | 3.25 | 3
2 | 15 | 3.35 | 0
2 | 26 | 3.10 | 6
我想创建一个新的数据帧(
ndf
),将
df1
df2
组合在一起,如下所示:

 x |  y |  z   | q  |  w             
 1 | 00 | 1.99 | 5  | 1.34            
 1 | 10 | 2.05 | 11 |  NA              
 1 | 12 | 1.89 | 9  | 1.69        
 1 | 20 | 1.75 | 7  |  NA
 2 | 05 | 3.25 | 3  |  NA
 2 | 15 | 3.35 | 0  | 2.99
 2 | 26 | 3.10 | 6  |  NA

如何在R中获取此数据帧?有人可以帮我吗?

您可以使用
合并
来合并两个数据帧

merge(df1, df2, all = TRUE)
结果是:

  x  y    z  q    w
1 1  0 1.99  5 1.34
2 1 10 2.05 11   NA
3 1 12 1.89  9 1.69
4 1 20 1.75  7   NA
5 2  5 3.25  3   NA
6 2 15 3.35  0 2.99
7 2 26 3.10  6   NA

非常感谢斯文!这正是我想要的@米格:不客气!