dataframe两个表合并_python pandas合并相同的excel

背景:孩子她妈需要手动合并30个格式一样的excel

如下5个格式一样的表测试

dataframe两个表合并_python pandas合并相同的excel_第1张图片

每个表的测试数据为,格式一样

dataframe两个表合并_python pandas合并相同的excel_第2张图片

步骤如下:

  1. 通过pandas读取每个excel到dataframe
  2. 通过pandas将这些dataframe合并
  3. 将合并后的dataframe写到新的excel
import pandas as pd
import tkinter as tk
from tkinter import filedialog
import pathlib 

#选择文件夹对话框
filedirectory=filedialog.askdirectory()

p1=pathlib.Path(filedirectory)
#找到路径下所有的xlsx格式文件
excles=p1.rglob('*.xlsx')
excelarr=[]
for eachexcel in excles:
    excelarr.append(eachexcel)

#合并数据
p1=pd.ExcelFile(excelarr[0])
mergedata1=p1.parse("Sheet1")
for i in range(1,len(excelarr)):
    tmp=pd.ExcelFile(excelarr[i])
    currentdata=tmp.parse("Sheet1")
    mergedata1=pd.concat([mergedata1,currentdata])


#写到excel
fname = tk.filedialog.asksaveasfilename(title=u'保存文件', filetypes=[("excel", ".xlsx")])
writerExcel=pd.ExcelWriter(fname+'.xlsx')
mergedata1.to_excel(writerExcel,'汇总表',index=False)
writerExcel.save();

print('sucess')

输出结果:

dataframe两个表合并_python pandas合并相同的excel_第3张图片

备注:实现方法很多,这只是其中一种方法

参考:无

你可能感兴趣的:(dataframe两个表合并,将已有的dataframe合并)