使用 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)

代码说明

  1. 读取 Excel 文件: 使用 pd.read_excel 方法读取两个 Excel 文件,分别存储在 df1df2 中。
  2. 遍历第一个 Excel 的列: 使用 iterrows 方法遍历 df1 的每一行,获取 Column1 列的值。
  3. 匹配对应值: 判断 df2 中的 Column2 列是否存在与当前遍历值相同的行。
  4. 获取对应行: 使用 df2[df2['Column2'] == value] 筛选出 df2 中与当前值匹配的行。
  5. 添加数据: 将匹配行按列的形式添加到 df1 的末尾,并使用 f'New_{column}' 为新添加的列命名。
  6. 保存结果: 使用 to_excel 方法将处理后的结果保存到新的 Excel 文件中。

注意

请根据实际情况修改代码中的文件名和列名,并确保两个 Excel 文件中的列名和数据类型匹配。

希望本文能够帮助你成功合并两个 Excel 文件。

Pandas: 合并两个Excel文件 - 根据列值匹配添加数据

原文地址: https://www.cveoy.top/t/topic/qELv 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录