使用布尔掩码过滤 Pandas 数据框

Mar*_*urg 3 python dataframe pandas

如何删除与一对条件不匹配的所有数据帧行。

我这样做了:

df = df[ ! ((df['FVID'] == 0) & (df['vstDelta'] == 0)) ]
Run Code Online (Sandbox Code Playgroud)

但这是一个语法错误。希望它说明了我想要做的事情,即删除包含这两个条件的所有记录。

All*_*len 5

您应该使用“~”而不是!得到条件的否定。

df = df[~((df['FVID'] == 0) & (df['vstDelta'] == 0))]
Run Code Online (Sandbox Code Playgroud)