Python将多个Excel的sheet分别合并到一个Excel的不同sheet

文章介绍了如何利用Python的Pandas库高效地合并指定目录下的所有Excel文件。首先,创建一个空的Excel文件,然后遍历目录中的每个文件,读取每个文件的sheet,将数据保存到新的DataFrame中,最后将所有数据写入到一个工作簿中,实现了文件的自动化合并。
摘要由CSDN通过智能技术生成

        在工作中,我们会遇到这样一个问题,将指定文件目录下的excel文件进行合并,如果手工去操作,大大降低了效率,使用python处理数据无疑是最简单的操作方式。

整体思路

(1)构建一个空的excel文件,然后循环数据源目录下文件名称。
(2) 获取每个excel工作簿里面的sheet子表名称列表,然后一一读取 
(3) 保存到新建的DataFrame中

具体代码:

import pandas as pd 
import numpy as np
import os 
os.chdir(r"E:\old\工作\工作记录\预测\类目销量预测\2020-05-01\数据源汇总\数据源")  #定义工作目录
path =r"E:\old\工作\工作记录\预测\类目销量预测\2020-05-01\数据源汇总\数据源"

list_dir = [ i for i in os.listdir(path) ] # 获取指定目录下的所有文件列表

# 创建空的excel文件
fin_file = "../预测数据源汇总.xlsx"

writer = pd.ExcelWriter(fin_file)  
for file_name  in  list_dir:
    sheet_list = list(pd.read_excel(os.path.join(path,file_name),sheet_name=None))  # 文件sheet页
    for s_name in sheet_list:
        data = pd.read_excel(os.path.join(path,file_name),sheet_name =s_name)
        data.to_excel(writer,sheet_name = s_name,index = False)
writer.save() # 保存文件
writer.close()  # 关闭文件并退出

效果展示:(已实现将所有数据存放在一个工作簿上~)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值