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

Pandas代码统计文本出现次数返回NaN,同类场景曾正常运行求助

排查步骤与解决办法
  • 检查列数据类型
    str.contains仅对字符串类型列生效,先执行以下代码查看列类型:

    print(df['TIE'].dtype)
    

    如果输出不是object,先将列转为字符串类型:

    df['TIE'] = df['TIE'].astype(str)
    
  • 处理空值与冗余字符
    列中的NaN值会让str.contains返回NaN,导致统计遗漏;另外单元格可能存在空格或不可见字符,影响匹配。修改代码如下:

    # 清除单元格首尾空格
    df['TIE'] = df['TIE'].str.strip()
    # 统计时将NaN转为False,避免干扰
    tie_win_count = df['TIE'].str.contains('doneontie', flags=re.I, na=False).sum()
    
  • 验证列内容与匹配规则
    查看TIE列的所有唯一值,确认目标文本的实际格式:

    print(df['TIE'].unique())
    

    如果存在拼写变体、带标点/全角字符的情况,调整正则表达式,比如用r'.*doneontie.*'进行模糊匹配。

  • 简化代码写法
    无需使用.values.sum(),直接对布尔类型的Series调用sum()即可,写法更简洁稳定。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 20:12:22