有条件加入熊猫

时间:2019-07-11 20:00:10

标签: sql pandas

我正在合并2个数据集:

df1.merge(df2,how='left' on='ID')

我只想选择df2.NAME ='ABC'

的记录

最简单的方法是什么?在SQL中,它将是:

select * from df1 left join df2 on df1.id=df2.id and df2.name='ABC'

1 个答案:

答案 0 :(得分:1)

df1.merge(df2[df2.NAME=='ABC'], how='left', on='ID')

df = df1.merge(df2, how='left', on='ID')
df = df[df.NAME=='ABC']

取决于您是否希望这些行存在于结果df中(带有NaN)[代码段1],还是要完全删除它们[代码段2]。