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