You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在pandas中删除全表任意列含特定字符串的行

解决方案

如果你使用pandas处理表格数据,可以直接用原生向量化操作实现需求,无需提前将目标值转为NaN,执行效率远高于逐行遍历:

# 导入pandas后读取你的数据,此处假设你的原始DataFrame变量名为df
df = df[~df.isin(["refused"]).any(axis=1)]

代码逻辑说明

  • df.isin(["refused"]):逐单元格检查值是否为目标值refused,返回与原DataFrame结构完全一致的布尔值表
  • .any(axis=1):按行聚合判断,只要该行存在任意一个True(即出现了目标值)就返回True,标记所有需要删除的行
  • ~:对布尔值取反,筛选出所有不含目标值的行

该方法默认不会匹配NaN值,你示例中含NaN的行也会正常保留,完全符合你的需求。如果需要同时匹配多个需要排除的值,只需要把所有目标值放入isin的列表参数即可,例如要同时删除含refused和unknown的行,写法改为df.isin(["refused", "unknown"])即可。

内容的提问来源于stack exchange,提问作者Riley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 15:57:00