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

如何使用Python修改Excel指定位置的列名?

用Python修改Excel指定行的列名(Pandas实现)

你的核心问题在于没有指定正确的表头行索引——因为你的列名位于第3行(A3、B3),而Pandas默认会把Excel的第一行(行号1)作为表头(索引0),所以需要先调整读取参数,再修改列名。

以下是两种可靠的实现方式:

方法一:按列名映射修改(推荐,不受列位置变化影响)

import pandas as pd

# 读取Excel时,指定第3行(索引为2,因为索引从0开始)作为表头
df = pd.read_excel('filename.xlsx', header=2)

# 通过字典映射旧列名到新列名,直接修改目标列
df.rename(columns={
    'id': 'sample_id',
    'singal': 'DBS VCA Signal'
}, inplace=True)

# 保存修改后的文件,index=False避免生成多余的索引列
df.to_excel('modified_excel_file.xlsx', index=False)

方法二:按列位置修改(适配你原有的思路)

import pandas as pd

# 同样先指定正确的表头行
df = pd.read_excel('filename.xlsx', header=2)

# 按位置修改:A3对应第0列,B3对应第1列
df.columns.values[0] = 'sample_id'
df.columns.values[1] = 'DBS VCA Signal'

df.to_excel('modified_excel_file.xlsx', index=False)

注意事项

  • 确认旧列名的拼写完全匹配(比如你写的singal如果实际是signal,需要同步修正)
  • 如果Excel中表头行上方有无关内容,header参数要对应调整(比如列名在第4行就设header=3)
  • 若需要保留Excel原格式(如单元格样式、公式等),Pandas无法完全实现,可改用openpyxl库直接操作单元格;但仅修改列名的话,Pandas足够高效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 18:35:24