当前位置: 首页 > 编程笔记 >

Python pandas实现excel工作表合并功能详解

羊慈
2023-03-14
本文向大家介绍Python pandas实现excel工作表合并功能详解,包括了Python pandas实现excel工作表合并功能详解的使用技巧和注意事项,需要的朋友参考一下
import os,pandas as pd,re
#1.获取文件夹下要合并的文件名
dirpath = '文件夹地址'
#工作表3特殊处理 需要开始下标和结束下标
begin = 231
end = 238
excel_names = os.listdir(dirpath)
#2.获取文件内容
sheet_1_merge = []
sheet_2_merge = []
sheet_3_merge = pd.DataFrame([0,0,0,0,0,0,0])
for excel_name in excel_names:
#绝对路径
excel_path = dirpath+excel_name
#dropna(axis=0, how='all')行全部为空得删除
#获取工作表1内容
sheet_1=pd.read_excel(excel_path, sheet_name=1, header=None)[2:][range(9)].dropna(axis=0, how='all')
sheet_1_merge.append(sheet_1)

获取工作表2内容

sheet_2=pd.read_excel(excel_path, sheet_name=2, header=None)[2:][range(1,7)].dropna(axis=0, how='all')
sheet_2_merge.append(sheet_2)
# 获取工作表3内容
sheet_3 = list(pd.read_excel(excel_path,sheet_name=3,header=None)[begin:end][1])
excel_name = re.findall('\d-(.*).xlsx', excel_name)[0]
sheet_3_merge.insert(1,excel_name,sheet_3)
print(sheet_1,'\n',sheet_2,'\n',sheet_3)
#保存合并内容
#axis=0,ignore_index=True合并行 忽略原来的下标
sheet_1_merge = pd.DataFrame(pd.concat(sheet_1_merge,axis=0,ignore_index=True))
sheet_2_merge = pd.DataFrame(pd.concat(sheet_2_merge,axis=0,ignore_index=True))
#columns主要是为了按照已有得排序,方便整理
sheet_3_merge = pd.DataFrame(sheet_3_merge,columns=['李1','李2,'李3','彭4','杨5','夏6',...,'杜34','叶35'])
writer = pd.ExcelWriter('C:/Users/zhuozhe/Desktop/merge.xlsx')
sheet_1_merge.to_excel(excel_writer=writer,sheet_name='merge_1')
sheet_2_merge.to_excel(excel_writer=writer,sheet_name='merge_2')
sheet_3_merge.to_excel(excel_writer=writer,sheet_name='merge_3')
writer.save()
writer.close()

合并文件包含三个工作表:完成任务,下周计划,本周工时(包含了全年的数据,所以需要抽取)。


合并后得文件,如图:


以上就是关于Python_pandas实现excel工作表合并功能的全部实例内容,感谢大家的阅读和对小牛知识库的支持。

 类似资料:
  • 我知道如何复制工作表,但这将导致多个工作表。我需要的是一个输出工作表,一个接一个地包含所有的工作表。 目前我正在做的是将每个工作表导出为< code>DataTable,然后逐个导入: 但这样,我就失去了单元格样式和文本格式 有没有办法用保留样式?

  • 本文向大家介绍php 实现Hash表功能实例详解,包括了php 实现Hash表功能实例详解的使用技巧和注意事项,需要的朋友参考一下 php 实现Hash表功能 Hash表作为最重要的数据结构之一,也叫做散列表。使用PHP实现Hash表的功能。PHP可以模拟实现Hash表的增删改查。通过对key的映射到数组中的一个位置来访问。映射函数叫做Hash函数,存放记录的数组称为Hash表。 Hash函数把任

  • 本文向大家介绍Android操作Excel文件的功能实现,包括了Android操作Excel文件的功能实现的使用技巧和注意事项,需要的朋友参考一下 Android中操作Excel文件导出报表时主要采用开源库jxl,最早用在java上,但也可用于Android。与之类似的POI,因为依赖库众多,所以只能用于java,而不能用于Android。 使用jxl需要在Android工程中导入jxl.jar包

  • 本文向大家介绍jQuery实现HTML表格单元格的合并功能,包括了jQuery实现HTML表格单元格的合并功能的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了jQuery实现HTML表格单元格合并的方法。分享给大家供大家参考,具体如下: 运行效果截图如下: 合并前: 合并后: 具体代码如下: 更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery表格(table)操作技巧汇

  • 所以我有 1500 个 Excel 工作簿,每个工作簿都有 10 张结构完全相同的工作表。我尝试将多个Excel工作簿合并到一个文件中,并使用以下代码成功: 谢谢,努尔贝克

  • 我在Jasper Report中的excel导出时遇到问题。我的报告的输出excel文件有不需要的合并单元格,具体取决于我为每个报告使用的报告模板。我在第一个excel表中显示报告模板,在第二个excel表中显示“列标题”和“数据”。我试图做的是忽略第二个表中的合并单元格。我使用 属性创建第二张图纸。 我不允许更改模板,所以我应该找到一种方法来忽略第二张表中的合并单元格,这是我的excel文件的屏