Python批量合并excel
Cemon_Liu Lv4

使用python快速合并Excel

手里有别人发过来的150+个excel文件,已知文件命不同,但excel里面的格式是统一的。希望将这些目录下的文件合并到一份excel里面去。

思路

对于这种合并文件的,之前的处理方式都是使用excel VBA来完成的。这一次刚好看了一些python的文件处理方式和使用pandas进行读取excel和输出。具体代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import pandas as pd
import os
excelpath="F:\\XXX\\"
#初始化一个dataframe用于后面的合并
df=pd.DataFrame({
"FUNCID":[1] ,
"USERID":[1] ,
"USERNAME":[1]

})
for dirpath, dirname, filename in os.walk(excelpath):
for f in filename:
#确认文件路径
# print(excelpath+f)
df1=pd.read_excel(excelpath+f)
#测试是否读取成功
# print(df1)
#合并到一起
df=pd.concat([df,df1])
df.to_excel("F:\\combine.xlsx",index=None)
  1. 对于目录内部文件读取有两种方式,os.path.listdir() 以及os.walk获取文件,但是使用之后更喜欢用walk方式,可以直接获得所有文件名。而listdir()则需要使用isfile()再进行判定才可以。
  2. 使用pandas读取excel和输出很是方便。读取后直接使用pd.concat和合并内容。
    image
 评论
评论插件加载失败
正在加载评论插件
由 Hexo 驱动 & 主题 Keep
访客数 访问量