摘要
在数据分析和处理过程中,经常需要合并来自不同文件夹的表格数据。手动操作既耗时又容易出错。本文将介绍一种高效的方法,利用Python编程语言和pandas库,轻松实现多个文件夹中表格的自动合并,大大提高工作效率。
前提条件
- 确保您的计算机已安装Python环境。
- 安装pandas库,可通过以下命令安装:
pip install pandas
步骤一:创建文件夹列表
首先,我们需要创建一个包含所有文件夹路径的列表。这些文件夹中应包含您要合并的表格文件。
import os
# 假设所有文件夹位于当前目录的"folders"子目录下
folder_path = 'folders'
# 获取所有文件夹的路径
folders = [os.path.join(folder_path, f) for f in os.listdir(folder_path) if os.path.isdir(os.path.join(folder_path, f))]
# 打印文件夹列表
for folder in folders:
print(folder)
步骤二:合并表格
接下来,我们将遍历每个文件夹,找到其中的表格文件,并使用pandas库将它们合并。
import pandas as pd
# 初始化一个空的DataFrame用于存储合并后的数据
combined_df = pd.DataFrame()
# 遍历每个文件夹
for folder in folders:
# 获取文件夹内所有文件
files = [f for f in os.listdir(folder) if f.endswith(('.csv', '.xlsx', '.xls'))]
# 遍历每个文件,并将其添加到combined_df中
for file in files:
file_path = os.path.join(folder, file)
# 读取文件
df = pd.read_csv(file_path) if file.endswith('.csv') else pd.read_excel(file_path)
# 合并DataFrame
combined_df = pd.concat([combined_df, df], ignore_index=True)
# 打印合并后的DataFrame的前几行
print(combined_df.head())
步骤三:保存合并后的表格
最后,我们将合并后的表格保存到指定的文件夹中。
# 指定保存路径
output_path = 'merged_data.csv'
# 保存合并后的DataFrame到CSV文件
combined_df.to_csv(output_path, index=False)
print(f'Merged data saved to {output_path}')
总结
通过以上步骤,我们可以轻松地将多个文件夹中的表格合并为一个。这种方法自动化了合并过程,大大提高了工作效率,减少了手动操作可能带来的错误。使用Python和pandas库,我们可以处理各种格式的表格文件,并轻松地扩展到更多的文件夹和文件类型。
