Python中也可以写Excel中的“Vlookup”函数?太牛逼、太高效了吧!

举报
yd_226342373 发表于 2021/05/20 00:57:31 2021/05/20
【摘要】 Vlookup函数,可以算是一个数据专员必须要会使用的基本函数了,确实很好用。但是你可能会注意到,Excel一旦数据量过大,打开都费劲了,何况打开后,你还要输入公式计算,就更费劲了,此时你有没有想到过被称作“万金油”的Python,他好像啥都可以做,是不是很牛逼?对于Excel来说 的大数据量,但是对于Python来说,应该是小菜一碟。今天我就带着大家对比学习一下,怎么...

Vlookup函数,可以算是一个数据专员必须要会使用的基本函数了,确实很好用。但是你可能会注意到,Excel一旦数据量过大,打开都费劲了,何况打开后,你还要输入公式计算,就更费劲了,此时你有没有想到过被称作“万金油”的Python,他好像啥都可以做,是不是很牛逼?对于Excel来说 的大数据量,但是对于Python来说,应该是小菜一碟。今天我就带着大家对比学习一下,怎么在Excel和Python中使用Vlookup函数。

数据源介绍

如图所示,有一个“vlookup.xlsx”文件,“A1:F11”是我们的数据源区域,“K1:L5”表示我们的查找源区域。我们的目的就是要在数据源区域的G列加一列数据,查找出不同类型下名称表示。
在这里插入图片描述

Vlookup函数介绍

这个函数我想大家应该都会,大家应该也不需要我介绍的太详细,因此我就简单的为大家介绍一下vlookup函数的语法。

  • 参数说明:vlookup(待查找目标, 查找区域, 匹配值所在的列, 精确匹配OR模糊查找);
  • 用一句通俗的话来说名vlookup函数的用法:针对每一个待查找目标,它就能从指定的查找区域中,查找返回想要查找到的值。

Excel中使用Vlookup函数

针对上述提到的数据源,了解Vlookup函数的语法后,下面来看看如何在Excel中使用Vlookup函数。
在这里插入图片描述
观察上图:首先,我们在G1单元格新增了一个“名称”列。接着,在G2单元格我们写了一个vlookup公式,E2表示每一个待查找值,K1:L5表示待查找区域,我们使用F3快捷键将这个区域变为了绝对引用,因为我们的查找区域就是这一个固定范围,2表示待返回值在查找区域中所在的列数,0表示精确匹配。最后,使用填充柄下拉填充即可。

Python中使用Vlookup函数

在Python中利用openpyxl库,就可以完成公式的填充。因此在使用openpyxl之前,需要使用pip install openpyxl安装好这个库。

from openpyxl import load_workbook 

workbook = load_workbook("vlookup.xlsx")
sheet = workbook["Sheet1"]

sheet["G1"] = "名称"
for i in range(2,sheet.max_row+1): sheet[f"G{i}"] = f'=VLOOKUP(E{i},$K$1:$L$5,2,0)'
workbook.save(filename = "vllokup1.xlsx")

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

在openpyxl中,读取已有的Excel文件,使用到的是load_workbook类,因此需要提前导入这个类。接着,实例化load_workbook("vlookup.xlsx")对象,得到一个工作簿对象。然后,使用workbook["Sheet1"]激活该工作簿中的Sheet1表,表示我们要针对这个表进行操作。完成上述操作后,下面就可以进行vlookup公式的填写了。

首先,我们利用sheet["G1"] = "名称"给G1单元格增加了一个表头。然后写了一个循环,循环第2行到最后一行,针对每一个G列单元格,我们写入上述vlookup公式。最后记得保存一下即可。

文章来源: blog.csdn.net,作者:数据分析与统计学之美,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_41261833/article/details/108597004

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。