我想将两个数据框A,B连接到一个没有重复行的新数据框(如果B中的行已经存在于A中,则不要添加):
数据框A:数据框B:
I II I II 0 1 2 5 6 1 3 1 3 1
新数据框:
I II 0 1 2 1 3 1 2 5 6
我怎样才能做到这一点?
最简单的方法是只进行串联,然后删除重复项。
>>> df1 A B 0 1 2 1 3 1 >>> df2 A B 0 5 6 1 3 1 >>> pandas.concat([df1,df2]).drop_duplicates().reset_index(drop=True) A B 0 1 2 1 3 1 2 5 6
本reset_index(drop=True)是后来修复指标concat()和drop_duplicates()。没有它,您将拥有[0,1,0]而不是的索引[0,1,2]。dataframe如果不立即重置,可能会导致进一步操作的问题。
reset_index(drop=True)
concat()
drop_duplicates()
[0,1,0]
[0,1,2]
dataframe