Python批处理excel文件多个sheet汇总脚本

这篇具有很好参考价值的文章主要介绍了Python批处理excel文件多个sheet汇总脚本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景介绍

假设有10个excle表,每个excel包含sheet1,sheet2,sheet3,sheet4,每个excel中sheet1的列名是一样的,sheet2的列名是一样的,现在要做的是将这10个excel中的sheet1合并汇总,sheet2合并汇总,将汇总后的sheet1和sheet2放在汇总表.xlsx里面,补充条件:每个excel的sheet1名字和汇总表的sheet1名字一样,每个excel的sheet2名字和汇总表的sheet2名字一样

目标

要在最终生成的汇总表中移除每个工作表中的’Excel’和’Sheet’两列,你可以在写入汇总数据之前对每个工作表的DataFrame进行处理:

import os
import pandas as pd

def combine_excel_sheets(summary_filename, folder_path, sheet_list):
    # 遍历指定文件夹下的所有Excel文件
    for file in os.listdir(folder_path):
        if file.endswith(".xlsx"):
            file_path = os.path.join(folder_path, file)
            # 读取所有工作表数据
            excel_data = pd.read_excel(file_path, sheet_name=None)

            # 提取指定工作表的数据
            for sheet_name in sheet_list:
                if sheet_name in excel_data:
                    sheet_df = excel_data[sheet_name]
                    # 添加新列标记所属excel文件和所属sheet
                    sheet_df['Excel'] = file
                    sheet_df['Sheet'] = sheet_name
                    globals()[f"{sheet_name}_df"] = pd.concat([globals().get(f"{sheet_name}_df", pd.DataFrame()), sheet_df], ignore_index=True)

    # 将汇总数据写入单个Excel文件中
    with pd.ExcelWriter(summary_filename) as writer:
        for sheet_name in sheet_list:
            # 将某个sheet的所有数据筛选出来
            sheet_df = globals().get(f"{sheet_name}_df", pd.DataFrame())
            # 移除'Excel'和'Sheet'两列
            sheet_df = sheet_df.drop(['Excel', 'Sheet'], axis=1)
            # 将数据写入汇总表格
            sheet_df.to_excel(writer, sheet_name=sheet_name, index=False)

# 指定自定义的汇总表完整路径、文件夹路径和要处理的工作表名称列表
summary_filename = "/path/to/your/summary/my_summary.xlsx"
folder_path = "/path/to/your/folder"
sheet_list = ["Sheet1", "Sheet2"]

# 调用函数进行Excel表格合并
combine_excel_sheets(summary_filename, folder_path, sheet_list)

在上述修改后的代码中,我们在写入每个工作表的数据之前使用drop函数移除了’Excel’和’Sheet’两列,并将更新后的数据写入到汇总的Excel文件中。这样,最终生成的汇总表中将不会包含每个工作表中的’Excel’和’Sheet’两列的信息。文章来源地址https://www.toymoban.com/news/detail-768060.html

到了这里,关于Python批处理excel文件多个sheet汇总脚本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 【已解决】‘python‘ 不是内部或外部命令,也不是可运行的程序或批处理文件

    【已解决】‘python‘ 不是内部或外部命令,也不是可运行的程序或批处理文件

    有时候,在 cmd 中输入 python,会提醒 ‘python’ 不是内部或外部命令,也不是可运行的程序或批处理文件。 我将python安装在E盘之后,输入python,显示如下问题 这个问题本质其实就是,windows的cmd并不能识别python这个符号(即无法识别这个符号是一个可执行程序),因为windows这

    2024年02月11日
    浏览(16)
  • 【解决方案】‘python‘ 不是内部或外部命令,也不是可运行的程序或批处理文件

    【解决方案】‘python‘ 不是内部或外部命令,也不是可运行的程序或批处理文件

    有时候,在 cmd 中输入 python,会提醒 ‘python’ 不是内部或外部命令,也不是可运行的程序或批处理文件。 我将python安装在E盘之后,输入python,显示如下问题 这个问题本质其实就是,windows的cmd并不能识别python这个符号(即无法识别这个符号是一个可执行程序),因为windows这

    2024年02月14日
    浏览(13)
  • 在终端输入“python”或者”pip“时出现python’不是内部或外部命令,也不是可运行的程序 或批处理文件
  • 批处理文件修改注册表

    批处理文件修改注册表

    首先建一个txt文件,然后把txt的后缀改为bat 下面示例改ie的起始页 下图是修改完后的内容,其中Start Page是需要修改项的名字,REG_SZ是类型 命令说明

    2024年02月11日
    浏览(12)
  • Windows下批处理删除文件

    最近我使用Maven的时候会出现下载jar包不成功的现象,然后需要把它删除然后重新下载,但是有时候文件过多,一个个删除太花费时间,所以用bat的批处理会很舒服。 bat的语法我之前没遇到过,然后我是边学习边试验,写出了一个简陋版的批处理文件。 我的思路是: 1、遍历

    2024年02月13日
    浏览(18)
  • 【Jlink烧录自动化】一台电脑连接 多个Jlink 用 J-flash批处理程序烧写多个单片机(生产批量烧录)

    【Jlink烧录自动化】一台电脑连接 多个Jlink 用 J-flash批处理程序烧写多个单片机(生产批量烧录)

    最近一些设备需要进行预生产(小批量生产),虽然是小批量但是数量也是很多,单靠人力烧录设备比较耗费时间 因此需要做一个烧录治具批量烧录。 软件 由于设备的MCU是arm cortex M4内核,使用的是Jlink烧录因此要安装 Segger Jlink 安装之后开J-flash 物料准备 由于要一次烧录多

    2024年01月17日
    浏览(20)
  • sql文件批处理程序-java桌面应用

    sql文件批处理程序-java桌面应用

        支持sql文件夹批处理,选中文件夹或者sql文件 支持测试连接,可以校验数据库配置 支持报错回显,弹出报错文件名以及问题语句 支持在程序中修改错误语句,用户可以选择保存修改内容继续执行或不保存修改只执行 支持动态显示执行进度 支持自动识别文件编码进行解

    2024年02月06日
    浏览(9)
  • 超详细 批处理文件脚本(bat) 教程(持续更新)

    超详细 批处理文件脚本(bat) 教程(持续更新)

     目录 前言 (1)使用echo输出字符串 (2)使用echo拼接字符串 i)没有变量,直接拼接 ii)有变量,拼接变量  (3)只想打印结果,不想显示回显,可以用@echo off (4)pause 作用是将dos界面暂停关闭 (5)title标识符,用来设置dos的标题 (6)rem用于注释,bat脚本

    2024年02月02日
    浏览(22)
  • 在window使用bat批处理文件执行cmd命令

    在window使用bat批处理文件执行cmd命令

    1、新建一个txt文本文档。然后在文档里面写入如下代码: 意思是在路径E:environmentELKlogstash-6.5.4bin执行logstash -f logstash.conf命令。路径、命令用隔开,命令之间也用隔开。如果还需要新增多条命令如Java-version则在logstash -f logstash.conf后面加java-version代码如下: 2、编辑好之后,

    2024年02月11日
    浏览(14)
  • mysql数据备份批处理文件正式版已测试通过

    mysql数据备份批处理文件正式版已测试通过

    中心思想找到源文件(.ibd)备份到目的地成.sql文件 1.比如备份 test1和test2 表 2.加载部分表 后续更新 说明: 备份的文件并非一定要求后缀名为.sql,例如后缀名为.txt的文件也是可以的。 示范

    2024年02月11日
    浏览(18)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包