如果我有两个pandas,它们分别是df1和df2,它们是相同的列:A,B,C,D我如何检查df2在A,B列中是否有记录,而这些记录在df2的A,B列中不存在Oracle SQL等价物是:
select A, B from df2 minus select A, B from df1
字符串
sdnqo3pr1#
这将只把那些只存在于df2中的记录放在'final' df中
final=df1.merge(df2[['A','B']],on=['A','B'],how='right',indicator=True) final=final.loc[final['_merge']=='right_only'] print(final)
odopli942#
下面是从df2中减去df1的另一种方法:
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': ['Alice', 'Bob', 'Charlie']}) df2 = pd.DataFrame({'A': [1, 2, 3, 4], 'B': ['Alice', 'Bob', 'Charlie', 'Sue']}) pd.concat([df1,df1,df2]).drop_duplicates(keep=False) A B 3 4 Sue
2条答案
按热度按时间sdnqo3pr1#
这将只把那些只存在于df2中的记录放在'final' df中
字符串
odopli942#
下面是从df2中减去df1的另一种方法:
字符串