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

如何仅按完整单词而非子串过滤Pandas DataFrame?

匹配完整单词的过滤方案

要实现仅筛选comment列中包含完整单词in的行,核心是用正则表达式的单词边界来精确匹配独立单词,而非子串。

优化后的代码(高效适配大型DataFrame)

# 用正则单词边界\b匹配独立的"in"
pattern = r'\bin\b'
comp = complete[complete['comment'].str.contains(pattern, case=False, regex=True)]

关键说明

  • \b是正则中的单词边界,它匹配单词字符(字母/数字/下划线)与非单词字符的分界,或是字符串的开头/结尾。这就确保只会匹配独立的in,不会命中coming、inside这类单词里的子串。
  • 直接对comment列使用str.contains是向量化操作,比原代码的apply逐行处理效率高得多,更适合大型DataFrame。
  • 如果需要兼容带标点的场景(比如in,、in.),这个正则同样有效,因为标点属于非单词字符,\b会正确识别in作为独立单词的边界。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 03:01:00