熊猫左连接,其中多列上的right为空

edo*_*edo 4 python-3.x pandas

我有两只大熊猫df x和y,它们都具有相同的3列ABC(不可为空)。我需要创建一个新的df z,通过“从x减去与y的行完全相同的行”获得,即a

x left join y on x.A=y.A and x.B=y.B and x.C=y.C
where y.A is null
Run Code Online (Sandbox Code Playgroud)

我该怎么做?卡住了索引,连接,合并,联接...

例:

dataframe x
A    B    C
q1   q2   q3
q4   q2   q3
q7   q2   q9

dataframe y
A    B    C
q4   q2   q3

dataframe z
A    B    C
q1   q2   q3
q7   q2   q9
Run Code Online (Sandbox Code Playgroud)

jez*_*ael 10

我认为需要merge指标并仅过滤来自的行left DataFrame

df = x.merge(y, indicator='i', how='outer').query('i == "left_only"').drop('i', 1)
print (df)
    A   B    C
0  q1  q2   q3
2  q7  q2  q93
Run Code Online (Sandbox Code Playgroud)