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

如何为合并后的Excel数据每条记录添加对应文件名列?

为合并后的Excel记录添加对应文件名列的解决方案

你只需要在读取每个Excel文件后,新增一列存储该文件的名称,再进行合并即可。具体修改如下:

关键修改点

  • 导入os模块用于提取文件名(避免手动处理路径字符串)
  • 循环中避免用file作为DataFrame变量名(防止覆盖原文件名变量)
  • 新增列存储当前文件的纯文件名(不带路径)

修改后的完整代码

import glob
import os
import pandas as pd

files = [item for item in glob.glob(r'../content/*.xlsx')]

combined = pd.DataFrame()
for file_path in files:
    # 读取Excel文件,保留指定列
    df = pd.read_excel(file_path,
                       skiprows=1,
                       usecols=['Уровень','Код WBS','Код','Тип','Название'])
    # 提取不带路径的纯文件名
    file_name = os.path.basename(file_path)
    # 新增列存储当前文件名
    df['文件名'] = file_name
    # 合并数据
    combined = pd.concat([combined, df])

# 导出时关闭索引列,避免生成多余数据
combined.to_excel("../content/multiplesheet.xlsx", sheet_name='Sheet', index=False)

额外优化说明

  • 原代码中file = file[['Уровень',...]]可以省略,因为usecols已经指定了读取列的顺序和范围
  • 添加index=False参数,防止导出Excel时自动生成索引列

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 09:47:04