视频讲解 | 匹配特定数据的优化思路及解法,还有一个好用又好记的函数!

2021-08-31 10:39:01 浏览数 (1)

自从小黄书有幸被拉登老师选为其训练营的教材,也让我有机会接触到更多营里小伙伴们的实际工作案例。

下面这个就是其中一个工作案例——有哪些产品(品种)存放在了不标准的仓位上。

这个问题本身并不复杂,但是,这个案例却有一些很值得说一说的内容。

首先,是一个涉及到问题简化(或者说优化)的思路——把非相关的(干扰)数据去掉。

因为,在这个问题上,我们只要识别出不标准的仓位,因此,标准的仓位信息其实我们用不着,因此,在进行处理之前,可以直接先通过筛选过滤掉,这样不仅能使得后续的处理更加简单,还能减少数据的处理量(判断范围),从而提升处理效率:

将标准的数据去除后,我们只需要判断某个品种所存放的仓位是否包含有非标准的仓位(参数表中的仓位)即可,因此,直接写公式得到结果:

代码语言:javascript复制
= if List.AnyTrue( 
           List.Transform( 
                  参数[仓位],
                  (x)=>Text.Contains([仓位],x) 
             ) 
        )
    then "不标准"
    else ""

关于List.Transform,是经常用来做批量处理的函数,前面的文章《用Power Query轻松批量抓取A股数据,及列表转换函数(List.Transform)的使用》里有详细讲解。

而List.AnyTrue函数,功能如其名称,只要一个List里有任何一个值为True,结果即为True,是判断多条件“或”的常用函数——请记住它!

0 人点赞