删除另一个数据框中的行

问题描述

我有两个数据框

df1:

A   B   C   D   E   F   G
1   2   3   4   5   6   7
8   9   0   1   2   3   4
5   6   7   8   9   0   1

df2:

A   B   C   D   E   F   G
5   6   7   8   9   0   1

我将如何删除 df2 中的行,以便:

输出

A   B   C   D   E   F   G
1   2   3   4   5   6   7
8   9   0   1   2   3   4

我查看了其他示例,其中大多数基于一列加入,您如何对多列执行此操作?

解决方法

试试merge

out = df1.merge(df2,how='left',indicator=True).loc[lambda x : x['_merge']=='left_only']
Out[128]: 
   A  B  C  D  E  F  G     _merge
0  1  2  3  4  5  6  7  left_only
1  8  9  0  1  2  3  4  left_only