合并2个数据帧

时间:2015-09-01 13:38:21

标签: python pandas

我想结合两个相似的数据帧。我已经检查了几个网站,但无法找到我的问题的答案。

df1 = DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                 'B': ['B0', 'B1', 'B2', 'B3'],
                 'C': ['C0', 'C1', 'C2', 'C3'],
               index=[0, 1, 2])   
df2 = DataFrame({'A': ['A0', 'A1', 'A4', 'A3'],
                 'B': ['B0', 'B1', 'B4', 'B3'],
                 'D': ['D0', 'D1', 'D4', 'D3']},
               index=[0, 1, 2])

我想要

    df3 = DataFrame({'A': ['A0', 'A1', 'A3'],
                     'B': ['B0', 'B1', 'B3'],
                     'C': ['C0', 'C1', 'C3'],
                     'D': ['D0', 'D1', 'D3'].
                     index=[0, 1, 2, 3])   

基本上我组合了2个数据帧,将D列添加到第一个数据帧。但我省略了任何不具有C和D值的行,如第2行和第4行。 我试过追加和连接,但它只是给了我所有的列和所有的行堆叠在一起。

谢谢!

1 个答案:

答案 0 :(得分:1)

只需执行默认merge这将在公共列上执行内部联接:

In [80]:

df1.merge(df2)
Out[80]:
    A   B   C   D
0  A0  B0  C0  D0
1  A1  B1  C1  D1
2  A3  B3  C3  D3