如何合并两个数据框而不在Python中添加重复项?

时间:2017-06-08 13:12:03

标签: python pandas dataframe

我有一个数据框如下:

    x   y   z
1   3   7   1
2   7   5   2
3   8   2   3

和其他数据框架如下:

    x   y   z
1   7   5   4
2   8   2   8
3   4   5   5
4   7   3   7
5   9   5   3
6   3   7   9

现在我想合并两个帧,合并后的帧看起来像这样:

    x   y   z
1   3   7   1
2   7   5   2
3   8   2   3
4   4   5   5
5   7   3   7
6   9   5   3

2 个答案:

答案 0 :(得分:4)

使用concat + drop_duplicates定义列检查重复xy + reset_index以删除重复的索引值:

df = pd.concat([df1,df2]).drop_duplicates(['x','y']).reset_index(drop=True)
print (df)
   x  y  z
0  3  7  1
1  7  5  2
2  8  2  3
3  4  5  5
4  7  3  7
5  9  5  3

答案 1 :(得分:2)

连接,然后重复数据删除

pandas.concat([df1,df2]).drop_duplicates().reset_index(drop=True)