2017-02-21 180 views
1

所以,我有两只大熊猫dataframes:合并熊猫数据帧

a  b 
abc def 
ghi jkl 
mno pqr 

a  b 
abc def 
ghi jkl 
stu vwx 

我想要做的就是合并这些dataframes但只保留不重叠的那些(在数据帧1和2)行3

a  b 
stu vwx 
mno pqr 
+1

想想略有更有意义的编辑你的问题数据(例如'col A','col B','A1','B1'等),因为它可以更容易地遵循你的意思。同时告诉我们你已经试过的东西,分享一些代码。 –

回答

1

可以使用merge与外连接和参数indicator,然后过滤行,其中不drop看重boolean indexing和最后删除列_mergebothreset_index默认index(0,1,2 ......):

df = pd.merge(df1, df2, how='outer', indicator=True) 
print (df) 
    a b  _merge 
0 abc def  both 
1 ghi jkl  both 
2 mno pqr left_only 
3 stu vwx right_only 

df = df[df._merge != 'both'].drop('_merge', axis=1).reset_index(drop=True) 
print (df) 
    a b 
0 mno pqr 
1 stu vwx