Python pandas按cert字段筛选数据仅返回空DataFrame问题求助
问题排查及解决方法
- 字段数据类型不匹配(最常见原因)
你当前判断条件用的是整数480228,如果cert列实际存储为字符串类型,等值匹配会直接返回空结果。
首先执行代码查看字段类型:
如果输出为print(Net_Income_df['cert'].dtype)object/string,将匹配值改为字符串格式即可:filter = Net_Income_df['cert'] == '480228' temp_df = Net_Income_df[filter] - 目标值存在隐藏字符/空格
如果字段是字符串类型但改引号后还是无结果,可能是值前后存在空格或不可见特殊字符,可先做清洗再匹配:filter = Net_Income_df['cert'].astype(str).str.strip() == '480228' temp_df = Net_Income_df[filter] - 数据集本身无符合条件的记录
可先查看cert列的所有唯一值,确认是否存在目标值:
如果输出列表中没有480228或对应的字符串值,说明数据集本身不存在符合筛选条件的行。print(Net_Income_df['cert'].unique().tolist())
内容的提问来源于stack exchange,提问作者kkkshsh
相关产品推荐
相关产品推荐

