1、表头一致
# -*- codeing = utf-8 -*-
# @Time:2023/5/8 12:15
# @Author:LivyD.Qiu
# @File:merge .py
# @Software:PyCharm
#第一步:导入包,设置工作目录
import os
import glob
import pandas as pd
os.chdir("/Users/livy/Desktop/eps工企+海关") #*将 “/ mydir” 更改为所需的工作目录*
#第二步:使用 glob 匹配模式 “csv”
#匹配模式(“csv”),然后将文件名列表保存在 “all_filenames” 变量中。
extension = 'csv'
all_filenames = [i for i in glob.glob('*.{}'.format(extension))]
#第三步:合并列表中的所有文件并导出为 CSV
#使用 pandas 连接列表中的所有文件,并导出为 CSV。输出文件位于你的工作目录中,名为 “combined_csv.csv”。
#在列表中合并所有文件
combined_csv = pd.concat([pd.read_csv(f,encoding='unicode_escape',error_bad_lines=False) for f in all_filenames ])#gb18030#unicode_escape #,error_bad_lines=False
#导出 csv
combined_csv.to_csv( "/Users/livy/Desktop/eps工企+海关/合并.csv", index=False, encoding='utf-8',index_label=False)
2、表头不一致
# -*- codeing = utf-8 -*-
# @Time:2023/6/8 14:16
# @Author:LivyD.Qiu
# @File:合并不同表头 .py
# @Software:PyCharm
import pandas as pd
import os
path = r"/Users/livy/Desktop/eps工企+海关"
df1 = []
file_list = os.listdir(path)
file_list.remove('.DS_Store') # 移除Mac系统自动生成的文件
for i in file_list:
# 重构文件路径
name = os.path.join(path,i)
print(name)
# 将excel转换成DateFrame
a = pd.read_csv(name,low_memory=False)
# 保存到新列表
df1.append(a)
# 多个DateFrame合并成一个,join参数outer代表并集
df = pd.concat(df1,join='outer')
df.to_csv( "/Users/livy/Desktop/eps工企+海关/合并.csv", index=False, encoding='utf-8',index_label=False)