Pandas: 合并两个Excel文件 - 根据列值匹配添加数据
使用 Pandas 合并两个 Excel 文件:根据列值匹配添加数据
本文将介绍如何使用 Pandas 库,根据一个 Excel 文件中的列值,判断另一个 Excel 文件中是否存在对应值,并将其对应行的数据添加到第一个 Excel 文件的末尾。
代码示例
import pandas as pd
# 读取第一个 Excel 文件
df1 = pd.read_excel('excel1.xlsx')
# 读取第二个 Excel 文件
df2 = pd.read_excel('excel2.xlsx')
# 遍历第一个 Excel 的列
for index, row in df1.iterrows():
# 获取第一个 Excel 的列值
value = row['Column1']
# 判断第二个 Excel 的列是否有对应值
if value in df2['Column2'].values:
# 获取对应行
matching_row = df2[df2['Column2'] == value]
# 将对应行按列的形式添加到第一个 Excel 的最后列的后面
for column in matching_row.columns:
df1.at[index, f'New_{column}'] = matching_row[column].values[0]
# 将结果保存到新的 Excel 文件
df1.to_excel('result.xlsx', index=False)
代码说明
- 读取 Excel 文件: 使用
pd.read_excel方法读取两个 Excel 文件,分别存储在df1和df2中。 - 遍历第一个 Excel 的列: 使用
iterrows方法遍历df1的每一行,获取Column1列的值。 - 匹配对应值: 判断
df2中的Column2列是否存在与当前遍历值相同的行。 - 获取对应行: 使用
df2[df2['Column2'] == value]筛选出df2中与当前值匹配的行。 - 添加数据: 将匹配行按列的形式添加到
df1的末尾,并使用f'New_{column}'为新添加的列命名。 - 保存结果: 使用
to_excel方法将处理后的结果保存到新的 Excel 文件中。
注意
请根据实际情况修改代码中的文件名和列名,并确保两个 Excel 文件中的列名和数据类型匹配。
希望本文能够帮助你成功合并两个 Excel 文件。
原文地址: https://www.cveoy.top/t/topic/qELv 著作权归作者所有。请勿转载和采集!