python 合并同一个excel文件中的多个sheets

功能需求如下:
在这里插入图片描述该excel文件中有21号与22号两天的数据,分别存放在两个sheet中,并且数据列名相同,要求将这两个sheet合并成一个sheet

import pandas as pd
#import os

file = 'GlassID.xlsx'
save_file = 'ID_concat.xlsx'
def merge_sheets(file, save_file):
    file = pd.ExcelFile(file)
    sheet_names = file.sheet_names
    print(sheet_names)
    sheet_concat = pd.DataFrame()
    for sheet in sheet_names:
        df = pd.read_excel(file, sheet_name=sheet,encoding='utf8')
        print(df.shape)
        sheet_concat = sheet_concat.append(df)
    sheet_concat.to_excel(save_file)
    print('合并之后的数据大小:',sheet_concat.shape)
merge_sheets(file, save_file)

上述代码在sheets的列名相同时测试成功:
在这里插入图片描述
在sheets表的列名不相同时,合并之后的数据大小: (4260, 6) 命名不同列会自动扩充,原本没有这些列的数据则会被填上空值。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值