Python-96 对多个excel文件进行合并并输出为新的csv文件2021-02-23

  • 整理数据时,需要对多个excel文件进行合并,所以写了以下这个merge方法:

  • 首先读取文件,然后读取为dataframe,合并,再写进到新的csv文件里!
  • 原始文件:


    image.png
# 重要:安装xlrd时要安装以下这个!
# pip install xlrd==1.2.0
# pip install pandas

import os
import pandas as pd
import numpy as np


dir = "C:\\Users\\Administrator\\Desktop\\1"#设置工作路径,读取其中的多个excel表

#新建列表,存放文件名(可以忽略,但是为了做的过程能心里有数,先放上)
filename_excel = []

#新建列表,存放每个文件数据框(每一个excel读取后存放在数据框)
frames = []

for root, dirs, files in os.walk(dir):
    for file in files:

        filename_excel.append(os.path.join(root,file))

        # excel转换成DataFrame
        df = pd.read_excel(os.path.join(root,file))
        frames.append(df)
#打印文件名
print(filename_excel)

 #合并所有数据
result = pd.concat(frames)

#查看合并后的数据
result.head()
result.shape

#合并文件输出
result.to_csv('C:\\Users\\Administrator\\Desktop\\MergedFile.csv',sep=',',index = False)
  • 最终在桌面得到了合并的文件MergedFile.csv。


    image.png
  • 有个缺陷:就是如果文件内含有中文,则出现乱码!这个在从图片提取文字时也出现过!

  • 如:


    image.png

你可能感兴趣的:(Python-96 对多个excel文件进行合并并输出为新的csv文件2021-02-23)