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

Pandas read_excel读取xlsx文件首行列缺失问题求助

Pandas读取Excel列识别异常问题解决方案

一、调整read_excel参数临时解决

该异常是Pandas 1.1.5版本内置的Excel读取引擎,对存在隐藏格式异常的表头单元格自动识别列数失败导致的,可通过以下参数调整直接修复:

  • 强制指定读取引擎为openpyxl,相比旧版默认的xlrd引擎对xlsx格式兼容性更好:
    df = pd.read_excel('Book1.xlsx', dtype=str, engine='openpyxl')
    
  • 如果仍识别失败,可明确指定读取的列范围,比如确认共5列时可写为:
    df = pd.read_excel('Book1.xlsx', dtype=str, engine='openpyxl', usecols="A:E")
    
  • 极端情况可先关闭自动表头识别,手动设置列名:
    # 不自动识别表头,读取所有行
    df = pd.read_excel('Book1.xlsx', dtype=str, engine='openpyxl', header=None)
    # 手动将第一行设为列名
    df.columns = df.iloc[0].tolist()
    # 跳过表头行取正式数据
    df = df[1:].reset_index(drop=True)
    

二、升级Pandas版本永久修复

该类Excel读取兼容性问题已经在Pandas 1.3版本修复,Python3.7最高支持的Pandas版本为1.3.5,不会出现版本不兼容情况,可按以下方式升级:

Anaconda环境升级(Mac/Windows通用)

  1. 先激活你部署应用使用的conda环境,示例命令:conda activate 你的环境名
  2. 执行升级命令,指定conda-forge源获取最新适配包:
    conda install pandas=1.3.5 -c conda-forge
    

pip方式升级

  1. 激活对应conda环境后,先升级pip到最新版本:
    python -m pip install --upgrade pip
    
  2. 执行指定版本升级命令:
    pip install pandas==1.3.5 --upgrade
    

升级完成后重新运行测试脚本,即可正常识别所有列。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 10:15:04