Python利用pandas库一次读取多个excel文件并合并

将一个文件夹里的多个文件读取,并合并。

这里要用到os库的walk和path功能。

举例:

一个文件夹内有2个或多个excel,名字没有明显的规律

 excel具有相同的列名,想要将他们纵向合并起来,用append函数。(若想横向合并,只要用concat函数替换这里的就行了,但是注意要用相同的行名/行索引。)

 

结果显示如下: 

具体步骤如下:

'''导入pandas库和os库'''
import pandas as pd
import os

'''定义一个空DataFrame对象,用于添加每个excel中的内容,注意列名一致'''
df_empty=pd.DataFrame(columns=['地区','时间','数量','等级'])

'''定义文件夹的路径'''
file_directory =r'C:\Users\whw\Desktop\汇总'
# root为起始路径,dirs为起始路径下的文件夹,files是起始路径下的文件。
'''利用os库的walk功能遍历文件夹里的所有文件,并读取文件名字'''
for root, dirs, files in os.walk(file_directory):  
    for file in files:
        '''os.path.join能够将文件夹的路径和文件名字合并成每个文件的完整路径'''
        file_path = os.path.join(root, file)
        rd=pd.read_excel(file_path,"Sheet1",header=0)
        df_empty=df_empty.append(rd,ignore_index=True)
        
    df_empty.to_excel(r'C:\Users\whw\Desktop\总体汇总.xlsx', encoding='gbk')

注意:代码运行时,请先确保你的excel文件是没有打开的。否则就会有隐藏的缓存文件

  • 6
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值