![d301ece65536aca7d597846a3dbf8960.png](https://i-blog.csdnimg.cn/blog_migrate/ff1881cad6ed553cda4ca595fa6ff1f6.jpeg)
在做调查、实验、统计学生成绩及个人信息等时,我们会将提前定制好的填写表格模板发放给对象,定制好的统计格式可以减少后续分析的汇总工作量,确保所有的填写都是规范的。
样本量必须要有一定的规模才能得到相对可靠的分析结论,对于成百上千张excel表格如何快速将所有的数据汇总到一张表上呢?另外excel表的格式可能是xlsx,也可能是xlsx,甚至可能是csv格式,如下图所示。不过不用担心,下面的这套简短代码能解决这些问题。
![785f48a9b99e9496015ba6123cc60e06.png](https://i-blog.csdnimg.cn/blog_migrate/67f69051643136c9545b0920758263fa.jpeg)
import os
import pandas as pd
#指定excel读取的路径
file_path=r'C:UsersAdministratorDesktopexcel'
#读取指定路径下的所有excel表绝对路径
file_list = []
for i, j, k in os.walk(file_path):
for f in k:
file_list.append(os.path.join(i, f))
#创建一个空的dataframe作为容器
df1=pd.DataFrame()
for file in file_list:
if os.path.split(file)[1].split('.')[1] == 'xlsx' or os.path.split(file)[1].split('.')[1] == 'xls':
data = pd.read_excel(file)
elif os.path.split(file)[1].split('.')[1] == 'csv':
data = pd.read_excel(file)
else:
continue
#将读取数据传进容器
if df1.shape[0]==0:#如果df1是空的
df1=data
else:
df1=pd.concat([df1,data],axis=0)
df1=df1.reset_index().drop(['index'],axis=1)
df1
读者除了要自行更改file_path路径外,其他的直接运行就可以得到那11张表格汇总后的数据,如需单独存储可直接导出到指定路径,效果如下:
![3afadf0bbd4685099f98fef331485c99.png](https://i-blog.csdnimg.cn/blog_migrate/c48e3f4c161b76915916d4138df32041.jpeg)
本文所用案例素材获取方式:打开后找到名为“excel”的文件夹下载即可获取
提取码: fxd5pan.baidu.com写在最后:
希望以上的内容能对你汇总excel数据有所帮助,请关注我,将持续更新python应用。