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

使用pd.read_excel导入Excel时,如何仅修改部分列名?

如何在使用pd.read_excel()导入文件时仅修改指定列名

针对你的需求,有两种高效的解决方案,无需手动写出全部99列的列名:

方法一:导入后使用rename()修改指定列(推荐)

先正常导入数据,再利用DataFrame的rename()方法仅修改目标列名,其他列名保持不变,这是最直观简便的方式:

import pandas as pd

# 正常导入Excel文件,保留原列名
df = pd.read_excel('data.xlsx')

# 定义需要修改的列名映射字典
rename_map = {'col_1': 'ID', 'col_2': 'name', 'col_3': 'score'}

# 仅修改指定列名,其余列名不受影响
df.rename(columns=rename_map, inplace=True)
  • columns参数传入列名映射字典,键为原列名,值为新列名
  • inplace=True表示直接在原DataFrame上修改;若不想改动原对象,可去掉该参数,将结果赋值给新变量(如new_df = df.rename(columns=rename_map))

方法二:导入时构造列名列表实现修改

如果需要在导入阶段就完成列名修改,可以先获取原文件的列名,再替换指定项后传入names参数:

import pandas as pd

# 读取Excel文件的原列名(仅读取表头行)
excel_handler = pd.ExcelFile('data.xlsx')
original_cols = excel_handler.parse(nrows=0).columns.tolist()

# 定义列名映射字典
rename_map = {'col_1': 'ID', 'col_2': 'name', 'col_3': 'score'}

# 构造新列名列表:替换指定列,其余保留原名称
new_cols = [rename_map[col] if col in rename_map else col for col in original_cols]

# 导入数据时使用新列名
df = pd.read_excel('data.xlsx', names=new_cols, header=0)
  • header=0表示将原文件的第一行作为表头的位置,并用names参数替换为我们构造的新列名
  • 此方法适合需要在数据导入环节就完成列名调整的场景

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 23:47:17