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

Pandas读取xlsx文件不完整仅读最后两列,如何解决?

Pandas读取Excel仅加载最后两列、其余列NaN的问题排查与修复

可能的原因

  • Excel单元格格式异常:前几列单元格被设置了特殊格式(比如自定义格式为;;;,会隐藏单元格内容,Pandas读取时直接识别为NaN)
  • 读取参数配置问题:read_excel的默认参数可能意外触发列过滤,比如header参数指定错误导致表头识别偏移,或者隐性启用了列筛选规则
  • 依赖库兼容问题:openpyxl、xlrd等Excel读取引擎版本过低,对部分Excel格式解析存在bug

修复方案

1. 检查并重置Excel单元格格式

打开目标Excel文件,选中所有列,设置单元格格式为「常规」,保存后重新读取。这能解决因格式隐藏导致的NaN问题。

2. 显式配置读取参数

  • 强制指定表头行,确保Pandas正确识别列名:
Books_ToRead = pd.read_excel("ORO_Project.xlsx", sheet_name="Books", header=0)
  • 直接指定需要读取的列(避免隐性过滤):
Books_ToRead = pd.read_excel("ORO_Project.xlsx", sheet_name="Books", usecols=["Book Name", "其他需要的列名"])
  • 更换读取引擎(针对xlsx文件推荐用openpyxl):
Books_ToRead = pd.read_excel("ORO_Project.xlsx", sheet_name="Books", engine="openpyxl")

3. 更新依赖库

执行以下命令更新Pandas及相关读取引擎,修复版本兼容问题:

pip install --upgrade pandas openpyxl xlrd

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 19:35:24