vlookup函数功能非常强大,那在Python中如何实现?
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
以下文章来源于艾然飞翔,作者宁晨
前言
在exce中vlookup函数" title="vlookup函数">vlookup函数功能非常强大、方便;但总是手动操作,毕竟还是不高效。在VBA里把一系列的手动操作变为一键操作实现目标,是不错的选择。如果你也会使用python的话,会发现目标实现起来,更简单。
那么使用python操作excel时怎么实现这个功能?
数据源位置为Sheet1工作表:
要在另一个工作表Sheet2里查询到上表里的后四列信息:
实现起来很简单,分三步走:
第一步:分别读取数据
#第一步:读取指定数据,注意工作表名称‘Sheet1’的首字母是大写状态df_source=pd.read_excel(r"/Users/dxn/Desktop/vlookup.xlsx",header=0,sheet_name="Sheet1",skipfooter=1)
df_target=pd.read_excel(r"/Users/dxn/Desktop/vlookup.xlsx",header=0,sheet_name="Sheet2")
第二步:设置两表共享有相同的索引列
#第二步,设置共有索引df_source.set_index("物料名称")
df_target.set_index("物料名称")
第三步:update方法完成目标
#第三步,update方法实现目标df_target.update(df_source)
这三步是目标实现的关键步骤,思路清晰易懂,操作简单。
完整代码如下:
import numpy as npimport pandas as pdimport osimport openpyxlfrom openpyxl import Workbook#在python中实现excel里的Vlookup函数功能,分三步走#
创建一个文件夹以存放操作后的文件os.mkdir(r"/Users/dxn/Desktop/result")
#创建工作簿以盛放操作结果表
wb=Workbook()
wb.save(r"/Users/dxn/Desktop/result/匹配结果.xlsx")
#第一步:读取指定数据,注意工作表名称‘Sheet1’的首字母是大写状态
df_source=pd.read_excel(r"/Users/dxn/Desktop/vlookup.xlsx",header=0,sheet_name="Sheet1",skipfooter=1)
df_target=pd.read_excel(r"/Users/dxn/Desktop/vlookup.xlsx",header=0,sheet_name="Sheet2")
#第二步,设置共有索引
df_source.set_index("物料名称")
df_target.set_index("物料名称")
#第三步,update方法实现目标
df_target.update(df_source)
#导出形成工作表
with pd.ExcelWriter(r"/Users/dxn/Desktop/result/匹配结果.xlsx",mode="a") as writer:
df_target.to_excel(writer,sheet_name="匹配结果")
以上是 vlookup函数功能非常强大,那在Python中如何实现? 的全部内容, 来源链接: utcz.com/z/530437.html