【Python】Excles横向merge合并到一个sheet中
2024-01-08 21:30:05
将文件夹内的多个excel合并在一个excel的一个sheet中,按照列“X”和列“Y”进行横向merge。
import os
import pandas as pd
# 设置文件夹路径
folder_path = r'D:\itm\excle'
# 获取文件夹下所有的 Excel 文件
all_files = os.listdir(folder_path)
excel_files = [f for f in all_files if f.endswith('.xlsx') or f.endswith('.xls')]
# 创建一个空的 DataFrame 用于存储所有数据
all_data = pd.DataFrame()
# 逐个读取 Excel 文件,并将每个文件的内容存储到一个新的 sheet 中
for file in excel_files:
df = pd.read_excel(os.path.join(folder_path, file))
df = df.drop(columns=[df.columns[0], df.columns[1]]) # 去掉第一列和第二列
if all_data.empty:
all_data = df
else:
all_data = pd.merge(all_data, df, on=['X', 'Y'], how='outer')
# 将所有数据存储到一个新的 Excel 文件中
all_data.to_excel(r"D:\itm\合并.xlsx", index=False)
合并前不需要去前两列的,可以不加以下这行:
df = df.drop(columns=[df.columns[0], df.columns[1]]) # 去掉第一列和第二列
文章来源:https://blog.csdn.net/ronvicki/article/details/135466345
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!