使用 Python 将 2 excel 个文件连接到一个新的 excel 文件

Concat 2 excel files to a new excel file using Python

Excel 文件 1:

ColumnA   ColumnB    ColumnC
1.        ice        Chicken
2.        ice        Butter
3.        ice        Mutton
4.        fire       Spinach
5.        fire       Beef 
6.        fire       Cucumber
7.        fire       Egg

Excel 文件 2:

ColumnA    ColumnB   
ice        Mutton
fire       Egg

我有 2 个 excel 文件。使用 python 我想将两个 excel 文件组合在一起看起来像这样:

ColumnA   ColumnB    ColumnC    ColumnD
1.        ice        Chicken    Mutton
2.        ice        Butter     Mutton
3.        ice        Mutton     Mutton
4.        fire       Spinach    Egg
5.        fire       Beef       Egg
6.        fire       Cucumber   Egg
7.        fire       Egg        Egg

我最后想要的是创建一个新的 excel 文件,其中包含 excel 文件 1 的所有 3 列,以及 ONLY B 列excel 文件 2 基于类似于 excel 文件 1 列 B 的列 A 的值。这个新列将是列 D。

我搜索了几个小时才知道如何比较两个 excel 文件以删除差异。任何帮助,将不胜感激。

我想你首先需要read_excel for DataFrames and then map and last to_excel:

import pandas as pd 

df1 = pd.read_excel('file1.xlsx')
df2 = pd.read_excel('file2.xlsx')

s = df2.set_index('ColumnA')['ColumnB']
print (s)
ColumnA
ice     Mutton
fire       Egg
Name: ColumnB, dtype: object

df1['ColumnD'] = df1['ColumnB'].map(s)
print (df1)
   ColumnA ColumnB   ColumnC ColumnD
0      1.0     ice   Chicken  Mutton
1      2.0     ice    Butter  Mutton
2      3.0     ice    Mutton  Mutton
3      4.0    fire   Spinach     Egg
4      5.0    fire      Beef     Egg
5      6.0    fire  Cucumber     Egg
6      7.0    fire       Egg     Egg


df1.to_excel('file3.excel',index=False)