需求
把excel的所有sheet合并到一个sheet中,方便后续转换csv和上传hdfs。
代码
from pandas import pandas as pd
import pyarrow
import openpyxl
import xlrd
import tkinter
##把excel中相同格式的sheet合并起来
def mergeSheets(fileName, savePath):
#读取excel
df : pd.DataFrame = pd.read_excel(fileName, sheet_name=None)
#创建一个空的DataFrame,columns指定为excel的第一个sheet的columns
tmpdf : pd.DataFrame = pd.DataFrame(columns=pd.read_excel(fileName).columns)
#获取excel的所有sheet
sheets = df.keys()
#遍历sheet,把每个sheet的数据垂直合并起来
for sheet in sheets :
tmpdf = pd.concat([tmpdf, df.get(sheet)])
#将结果写入保存位置
tmpdf.to_excel(savePath, index=False)
print("写入成功!")
if __name__ == '__main__':
mergeSheets("C:/Users/wuzixuan/Desktop/(2020.7-2021.1月).xlsx", "C:/Users/wuzixuan/Desktop/投诉历史.xlsx")