熊猫定位多个条件

fre*_*rtz 2 loc pandas

我有一个数据框,我想删除 A 列等于蓝色且列 B 等于绿色的所有行。

我虽然下面应该工作,但事实并非如此。

任何人都可以看到问题

df=df.loc[~(df['A']=='blue' & df['B']=='green')]
Run Code Online (Sandbox Code Playgroud)

Jim*_*erg 6

你应该把这两个命题分开:

df1=df.loc[~(df['A']=='blue') & ~(df['B']=='green')]
Run Code Online (Sandbox Code Playgroud)


Qua*_*ang 5

使用eq代替==

df.loc[~(df['A'].eq('blue') & df['B'].eq('green'))]
Run Code Online (Sandbox Code Playgroud)

  • 这会阻止您[运算符优先级](/sf/ask/1423340481/):OP注意:) (2认同)