python指定多个csv文件拼接/遍历当前文件夹中所有csv文件并横向拼接/仅拼接第二列

您所在的位置:网站首页 合并文件夹中所有文件 python指定多个csv文件拼接/遍历当前文件夹中所有csv文件并横向拼接/仅拼接第二列

python指定多个csv文件拼接/遍历当前文件夹中所有csv文件并横向拼接/仅拼接第二列

2024-07-02 15:48| 来源: 网络整理| 查看: 265

一、指定多个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')

三、遍历文件夹中所有csv文件并横向拼接每个csv的第二列:

当前路径:

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) # 提取每个文件的第二列数据 column = df.iloc[:, 1] # 将提取的数据添加到合并后的DataFrame中 merged_data = pd.concat([merged_data, column], axis=1) # 保存合并后的数据到新的CSV文件 merged_data.to_csv('合并第二列.csv', index=False)

指定路径:

import os import pandas as pd # 获取文件夹路径 folder_path = r"文件夹路径" # 初始化一个空的DataFrame用于存储拼接结果 result = pd.DataFrame() # 遍历文件夹中的所有文件 for file_name in os.listdir(folder_path): # 判断文件是否为CSV文件 if file_name.endswith(".csv"): # 构建文件的完整路径 file_path = os.path.join(folder_path, file_name) # 读取CSV文件 df = pd.read_csv(file_path, encoding='gbk') # 获取文件的第二列数据 column_data = df.iloc[:, 1] # 将第二列数据添加到结果DataFrame中 result = pd.concat([result, column_data], axis=1) # 将结果保存为CSV文件 result.to_csv("合并第二列.csv", index=False) # 打印结果DataFrame的大小 print(result.shape)

#学习备份



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3