分享

病案统计工作中vlookup的常见用法及问题(一)

 狐尾草 2024-04-29 发布于广西

上次发了《《国家临床专科能力评估办法》指标闲聊(二)》,里面提到了vlookup模糊查找现住址地址的方法,但是没有展开讲,有小伙伴在后台留言,说要了解vlookup的模糊查找的用法。

这两天准备再花点时间捋一捋vlookup的一些常用场景。

Vlookup函数在Excel使用人群中的大名应该是不同凡响的,作为病案统计人员,对它肯定也不能小瞧了。先来看一下office官方给出Vlookup函数的语法解释:

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

是不是看不懂,有点晕?

想象一下,你拿着vlookup去找对象:

lookup_value就是你想找的对象的特点,比如C34作为特点

table_array就是你去哪里找对象,就是你想查找的特征(C34)和对象(返回值支气管和肺恶性肿瘤)所在的区域列(查找的内容所在的列作为第一列);

index_num就是你找的对象(支气管和肺恶性肿瘤)在哪一个位置,相对第一列的第几列;

range_lookup是你找对象是模糊匹配(TRUE,近似匹配值,也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值)还是精确匹配(FALSE,完全符合条件才行)。    

下面就具体看看怎么用。    

一、精确查找:    

这是我们在平时工作中最常用的方式。比如根据疾病类目匹配病种。现有如下类目表:

图片

在I2单元格输入公式=VLOOKUP(H2,类目表!A:B,2,FALSE),按照类目表中ICD-10类目对应相应的病种名称。    

划重点,第一个参数H2为你要找的对象的特征描述,类目表!A:B是你要找的对象所在的区域,第一列A列是需要对应的特征所在的列(必须在第一列,否则会出错),2指的是返回的数值对应A列的距离(即返回值所在区域B相对于A列是第2列),FALSE指精确匹配(必须要完全符合条件才行)。

图片

这个例子来自《Excel中用组合函数提取ICD-10编码对应相关病种

二、模糊查找

先按照邮编排序整理一份邮编地区对照表,要注意邮编排序要从小到大。    

图片

Vlookup的模糊匹配用法

图片    

所谓vlookup函数模糊查找就是当函数最后一个参数为1时,第二个参数(一个区域),要以首列升序排列,在第二个参数(区域)首列查找第一个参数,从上往下查找直到找到第一个不大于(小于等于)第一个参数的最小值然后返回这个最小值同行的第二列的值

说起来有点绕,我自己都没听懂说的是啥。好吧,上实例,就按照这个邮编地区对应表,用vlookup公式对应邮编查找返回患者所在的地市。

图片    

在H2单元格输入公式“=VLOOKUP(G2,$A$1:$B$18,2,1)”,看好了最后一个参数用的是“1”或“TRUE”或者直接不要这个参数写成“=VLOOKUP(G2,$A$1:$B$18,2)”(注意不是缺省,而是连第三个参数后面的逗号都不要!!!),回车,下拉,返回各个邮编对应的城市。现在核对一下,311300是杭州市临安区的,而334700是江西省上饶市玉山县的,当然就是外省了。所以现在再解释一下这个vlookup的模糊查找。注意查找区域里面第一列应该按照升序排列!注意查找区域里面第一列应该按照升序排列!注意查找区域里面第一列应该按照升序排列!重要的事情强调三遍哈。查找的时候按照模糊查找原则,如果A列里面的内容有完全能对上的,则返回该值对应的内容,比如311800,能找到A列中311800,则返回绍兴市,而如果是311300,杭州市临安区,属于杭州的,邮编的数值大小介于杭州市的邮编310000和绍兴市的311800,所以返回第一个不大于(即最接近)311300的数值310000对应的杭州市。以此类推,看一下其他的是不是符合这个规律。

具体例子详情见《vlookup函数统计患者地区分布》。

今天先讲到这里,其实内容还是之前的内容,就是vlookup的基础用法,包括精确匹配和模糊匹配。

后面还会继续回头看一下vlookup的其他用法。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多