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

使用Pandas筛选Status为Unavailable的行时得到空DataFrame的问题

解决方法

以下是几种常见的排查和解决思路:

  • 排查字符串格式问题:大概率是目标字符串前后存在空格或隐藏特殊字符,导致精确匹配失败。先查看Status列的所有唯一值确认:

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

    如果发现带空格的版本,用str.strip()去除前后空格后再匹配:

    df2 = df[df['Status'].str.strip() == "Unavailable"]
    
  • 检查大小写匹配:若实际数据中的值大小写和你写的不一致(比如unavailable或UNAVAILABLE),可以用不区分大小写的方式匹配:

    df2 = df[df['Status'].str.lower() == "unavailable"]
    
  • 确认列名正确性:检查列名是否存在拼写错误,比如是否写成了status或Statuss。查看所有列名验证:

    print(df.columns)
    
  • 验证数据类型:如果Status列是分类(category)类型,可能会导致匹配异常,先转为字符串类型再尝试:

    df['Status'] = df['Status'].astype(str)
    df2 = df[df['Status'] == "Unavailable"]
    
  • 快速验证匹配行数:用sum()统计符合条件的行数,确认处理逻辑是否生效:

    print((df['Status'].str.strip() == "Unavailable").sum())
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 05:05:36