python - 如果来自一列的数据存在于另一列中,则合并两个数据框
问题描述
我有两个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 新手,我正在学习,所以任何帮助将不胜感激。提前致谢!
解决方案
首先,您需要安装 pandas 库。如果您还没有,请使用:
pip install pandas
现在,导入 pandas,您可以使用 pd.merge 函数:
import pandas as pd
new_excel = pd.merge(excel_1, excel_2, on = ['Fruit'], how = 'left')
如果这有助于您理解,这将类似于 excel 中的 VLOOKUP 函数。如果您感兴趣,请查看这篇文章以了解更多信息: Pandas Merging 101
推荐阅读
- caching - 一致性缓存中的随机密钥获取
- java - 如何查看 Java 10 Javadocs(在 Eclipse 中)
- php - Laravel 5.1 获得前 100 个结果并应用分页问题
- firebase - 如何使用 Firebase Cloud Function 计算用户数(获取 Function Returned Undefined 错误)
- vba - 根据最后一个单元格设置范围,值加 1
- arrays - 更新 redux 数组中的多个项目
- android - 按钮未出现在基本活动中
- java - Hibernate - @Embeddable 与其自身的父关系
- php - 正确读取多个 CLOB 数据 - php / oracle
- android - 您能否确定用户是否刚刚使用生物识别技术解锁了移动设备?