vlookup函数功能非常强大,那在Python中如何实现?

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 np

import pandas as pd

import os

import openpyxl

from 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

回到顶部