python——批量合并Excel文件

引言

       在工作中,为了方便分析数据,各位小可爱想必会遇到批量处理Excel文件的情况,今天,小编带各位小可爱来详细了解一下如何根据自己定义的条件批量合并Excel文件。首先需要导入os、xlrd、xlsxwriter、pandas和xlwt库。

代码实现

       话不多数,下面让我们一起来看完整代码:

import os
import xlrd
import xlsxwriter
import pandas as pd
import xlwt

#获取Excel文件夹下的文件名称
path='需要批量处理的Excel文件路径'
out_excels_path='输出路径'#合并后Excel文件路径
excel_features=os.listdir(path)#获取文件夹下的Excel文件名称
#print(len(excel_features),excel_features)

#定义合并后文件的时间标志
year_month_names=[202301,202302,202303,202304,202305,202306,202307,202308,202309]
#定义Excel合并条件
for year_month_name in year_month_names:
    #print('list',year_month_name)
    str_year_month=str(year_month_name)
    data_list=[]
    out_excel_path = str(out_excels_path + '/' + 'NH3_' + str_year_month + '.xlsx')  # 合并后文件输出路径和文件名
    print(out_excel_path)
    for excel_feature in excel_features:
        year_month = excel_feature[4:10]#取Excel文件4-10位字符内容
        year_month_int=int(year_month)
        #判断字符内容与时间标志是否一致
        if year_month_int==year_month_name:
            #print('equal')
            in_excel_path=str(path+'/'+excel_feature)#待合并Excel文件路径
            data_list.append(pd.read_excel(in_excel_path))#读取Excel文件,返回一个DataFrame对象,并将其写入列表
            data_all=pd.concat(data_list)#concat合并pandas数据
            print('合并至{},数据行列数为{}'.format(excel_feature,data_all.shape))#查看DataFrame的行列数
            data_all.to_excel(out_excel_path,index=False)#将DataFrame保存为Excel文件
    print(str_year_month,'合并完毕!')







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风“流泪”了

您的鼓励将是我创作的不竭动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值