如果来自一列的数据存在于另一列中,则合并两个数据帧

时间:2020-07-15 17:23:23

标签: python excel pandas dataframe merge

我有两个Excel文件。

Excel 1 - a.xlsx containing
SL NO       Fruit   Colour  Quantity
1           Apple       
2           Orange      
3           Banana      
4           Pineapple       
5           pears       
6           Grape       
7           Mango       

和Excel 2-包含b.xlsx

SL NO       Fruit       Colour      Quantity
1           Apple       RED         2
2           Orange      Orange      4
3           Pineapple   Brown       6
4           Grape       Purple      8

我想要一个像这样完整的新excel文件

SL NO       Fruit       Colour      Quantity
1           Apple       RED         2
2           Orange      Orange      4
3           Banana      
4           Pineapple   Brown       6
5           pears       
6           Grape       Purple      8
7           Mango        

如何执行相同的操作?匹配应基于水果名称进行。我可以将其加载到不同的数据帧中,但是之后如何操作并使用合并的输出创建新的Excel? 我是python的新手,正在学习,因此对您有所帮助。 预先感谢!

1 个答案:

答案 0 :(得分:1)

首先,您需要安装pandas库。如果还没有,请使用:

pip install pandas

现在,导入熊猫,您可以使用pd.merge函数:

import pandas as pd

new_excel = pd.merge(excel_1, excel_2, on = ['Fruit'], how = 'left')

这将类似于excel中的VLOOKUP函数,如果可以帮助您理解。如果您有兴趣,请查看这篇文章以了解更多信息:Pandas Merging 101