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

如何使用pandas读取Excel避免Unnamed列并识别特殊列结构?

解决特殊结构Excel表格的pandas读取问题

这种第一列标题在第二行、其余列标题在第一行的非对称表头,pandas默认的header参数确实处理不了,得手动拆分表头和数据,给你两种实用方法:

方法一:全量读取后手动重构表头

  1. 先把整个表格按纯数据读取(不指定表头):
import pandas as pd
df = pd.read_excel("你的文件路径.xlsx", header=None)
  1. 提取表头内容:第一列标题取第二行第一列的值,其余列标题取第一行从第二列开始的值:
# 构建新表头列表
new_columns = [df.iloc[1, 0]] + list(df.iloc[0, 1:])
  1. 截取真正的数据行(从第三行开始),并替换表头:
# 从第3行(index=2)开始取数据,同时替换列名
df = df.iloc[2:].rename(columns=dict(zip(df.columns, new_columns)))
# 可选:重置索引
df = df.reset_index(drop=True)

方法二:分两次读取表头和数据

如果表格数据量很大,全量读取占内存,可以分两步:

  1. 先读取前两行,提取表头信息:
header_rows = pd.read_excel("你的文件路径.xlsx", nrows=2, header=None)
new_columns = [header_rows.iloc[1, 0]] + list(header_rows.iloc[0, 1:])
  1. 跳过前两行读取数据,并直接设置新表头:
df = pd.read_excel("你的文件路径.xlsx", skiprows=2, header=None, names=new_columns)

两种方法都能准确把第一列标题设为"A",其余列设为"B""C",完美适配这种特殊结构的表格。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 02:27:19