一、指定多个csv文件拼接:
import pandas as pd df1 = pd.read_csv(r"1.csv", encoding='gbk') #读取当前文件夹中文件 #指定路径的文件则改为(r'C:/Users/Administrator/Desktop/angular_velocity/1.csv') df2 = pd.read_csv(r"2.csv", encoding='gbk') #需手动更改添加所有文件名称df3、df4... file = [df1, df2] outfile = pd.concat(file, axis=1) #横向拼接 outfile = pd.concat(file, axis=0) #竖向拼接 outfile.to_csv("WhatUWant.csv",index=0, sep=',') #输出文件名WhatUWant.csv print(outfile.shape) #查看文件大小
二、遍历当前文件夹中所有csv文件并横向拼接:
方法一:使用glob方法和pandas库
import glob import pandas as pd # 获取所有CSV文件路径 csv_list = glob.glob('*.csv') # 创建一个空的DataFrame用于存储合并后的数据 merged_data = pd.DataFrame() # 遍历所有CSV文件 for csv_file in csv_list: # 读取CSV文件数据 df = pd.read_csv(csv_file) # 横向拼接数据 merged_data = pd.concat([merged_data, df], axis=1) # 保存合并后的数据到新的CSV文件 merged_data.to_csv('合并.csv', index=False)
方法二:使用pandas库的concat方法
import pandas as pd # 创建一个空的DataFrame用于存储合并后的数据 merged_data = pd.DataFrame() # 遍历所有CSV文件 for i in range(1, 3): # 读取CSV文件数据 df = pd.read_csv(f'文件-{i}.csv') # 横向拼接数据 merged_data = pd.concat([merged_data, df], axis=1) # 去除重复数据 merged_data.drop_duplicates(inplace=True) # 保存合并后的数据到新的CSV文件 merged_data.to_csv('文件.csv', index=False, encoding='utf-8')