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

Pandas DataFrame行筛选:保留含指定字符串的行

嘿,我来帮你解决这个Pandas筛选的问题!下面是针对你需求的具体实现方案:

Pandas筛选指定文本行的解决方案

假设你的原始DataFrame名为df,要筛选Text列包含"AWAIT TO SHIP"、"13579"或"24613"的行,直接用这段代码就能搞定:

import pandas as pd

# 构建筛选条件:匹配任意一个目标字符串
mask = df['Text'].str.contains(r'AWAIT TO SHIP|13579|24613', na=False)

# 应用筛选,得到目标表格
target_df = df[mask]

关键细节说明:

  • str.contains() 是Pandas专为字符串列设计的匹配方法,用|分隔多个匹配项就表示“或”的逻辑
  • na=False 参数很重要:如果你的Text列有缺失值(NaN),这个参数会把这些行直接排除,避免触发报错
  • 开头的r表示原始字符串,确保特殊字符(这里没有,但属于好习惯)不会被意外转义

常见错误排查(针对你之前遇到的报错):

如果之前的代码出问题,大概率是这几个原因:

  • 漏写了str.:直接用df['Text'].contains()会报错,因为Pandas的普通列没有contains方法,必须用str.contains针对字符串列
  • 没处理缺失值:Text列的NaN会让str.contains返回NaN,导致筛选时出错,加上na=False就解决了
  • 匹配模式写错:比如多个字符串之间没加|,或者不小心加了多余的引号

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 09:05:02