问题:今天有人找我,需求是把多个excle 表快速合并成为一个,比如行政人员统计了每个员工的信息:年龄、住处、身份证号。最后需要把这些表格汇总成为一个表格。一个个复制太慢了,所以需要借用python来处理。
主要用到:
1 、pandas 连接函数 pandas.concat
2 、pandas写入函数pandas.DataFrame.to_excel
同样的函数还有pandas.DataFrame.to_csv 将DataFrame写入逗号分隔值(csv)文件。
import os
import pandas as pd
import numpy as np
dir = r"C:\Users\scene3dwh\Desktop\testexcle"#设置工作路径
#新建列表,存放文件名
filename_excel = []
#新建列表,存放每个文件数据框
for root, dirs, files in os.walk(dir):
for file in files:
filename_excel.append(os.path.join(root,file))
df = pd.read_excel(os.path.join(root,file)) #excel转换成DataFrame
frames.append(df)
#打印文件名
print(filename_excel)
#合并所有数据
result = pd.concat(frames)
#查看合并后的数据
result.head()
result.shape
result.to_excel('C:\\Users\\scene3dwh\\Desktop\\testexcle\\最后合并.xlsx',index =0)