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

如何在DataFrame列中搜索包含特定字符串的行(适配多值场景)

现有代码的逻辑是判断整行是否存在完全等于Sci-fi的单元格,仅能匹配单分类行,多分类逗号拼接的字符串和Sci-fi不完全相等,因此无法命中。

你可以使用pandas提供的字符串匹配方法str.contains()针对分类列做子串匹配,实现需求:

如果明确第一列的列名(假设为genre),可直接按列名调用:

sci_fi_df = df[df['genre'].str.contains('Sci-fi', na=False)]

如果不想硬编码列名,可按位置取第一列处理:

sci_fi_df = df[df.iloc[:, 0].str.contains('Sci-fi', na=False)]

可选优化

如果需要兼容大小写不一致的分类写法(比如sci-fi、SCI-FI),可以添加case=False参数忽略大小写:

sci_fi_df = df[df.iloc[:, 0].str.contains('Sci-fi', na=False, case=False)]

na=False参数用于处理分类列存在空值的场景,空值会直接返回False,避免匹配过程中抛出异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 20:45:05