python 合并文件夹下所有csv_python将文件夹中所有文件合并成一个csv文件

背景

文件夹2019 的文件为csv文件,文件夹2020的文件为excel文件

目的

将两个文件夹中所有的文件合并成一个表格,以便进行后续的数据分析

反思

因为是不同的文件格式,只能将文件分成两个文件夹,分两次遍历文件。

步骤

a:先遍历excel2020文件夹所有的文件,合并一个csv表至2019文件夹

b:遍历2019文件夹所有的文件名,合并csv终表。

#合并数据到Alldata文件夹下的Alldata文件

import os

import pandas as pd

import numpy as np

dir =r'D:\wechatdata\Year2020'#设置工作路径

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

filename_excel = []

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

frames = []

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

for file in files:

#print(os.path.join(root,file))

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_csv(r'D:\wechatdata\Year2019\Year2020.csv',sep=',',index = False)

dir =r'D:\wechatdata\Year2019'#设置工作路径

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

filename_excel = []

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

frames = []

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

for file in files:

#print(os.path.join(root,file))

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

df = pd.read_csv(os.path.join(root,file)) #excel转换成DataFrame

frames.append(df)

#打印文件名

print(filename_excel)

#合并所有数据

result = pd.concat(frames)

#查看合并后的数据

result.head()

result.shape

result.to_csv(r'D:\wechatdata\Alldata\Alldata.csv',encoding='utf-8-sig',sep=',',index = False)

python 合并文件夹下所有csv_python将文件夹中所有文件合并成一个csv文件_第1张图片

通过print(filename_excel)打印出文件名可以看到遍历了文件夹中所有文件

你可能感兴趣的:(python,合并文件夹下所有csv)