首页 > 解决方案 > 删除熊猫数据框中不符合条件的行

问题描述

我有一个熊猫数据框,需要清理Status列。我的数据如下所示:

id        Status
123       100%
124       0%
125       1%
126       100%
127       0.25%

我想排除所有不是 100% 或 0% 的行。列的类型是object

我希望我的数据如下所示:

id        Status
123       100%
124       0%
126       100%

我尝试了以下方法:

df = df.drop(df[(df.Status == '100%') & (df.Status == '0%')].index)

但这实际上根本不会改变数据集。

谢谢!

标签: pythonpandas

解决方案


您可以有条件地选择符合条件的行并将其设置为新的数据框值

df = df.loc[(df['Status']  == '100%') | (df['Status']  == '0%')]

编辑:“|” 而不是“&”,因为两者不能同时为真,因此返回 0 结果。


推荐阅读