如何根据性别身高体重判定衣服的尺码?
今天在QQ群里看到一个问题,有男士、女士的尺码表,要根据顾客的具体身高、体重、性别来匹配服装的尺码:
我们动手试试看
对于这种数据处理Power Query应该是很方便的,我们先整理尺码表格:
一共有四个表格,男士、女士上衣;男士、女士长裤
我们要统一一下格式:
原表导入到Power Query,然后我们逆透视,添加列统一修改列名称:
四个表格都做成这个样子,然后我们追加为一个新查询:
把四个表的数据追加到一张表中,这个尺码表就是我们要查询的数据源。
我们把身高体重都变成数字,方便后面的运算与查找。
然后就是如何匹配的问题,其实相当于是多个条件同时满足的一种查询,问题是尺码表的身高、体重都是5为间隔的,而顾客的实际身高体重,不可能刚刚好都是185,120这样的数值,所以我们需要把顾客的实际身高体重做一个判定,如果是在Excel中大家可以用MROUND函数,直接计算,Power Query中没有这样的函数,我们要自己创建一个函数:
大家有没有发现一个问题,为什么身高都是加减2这样的范围,其实体重也是一样的:举个例子:
身高182,就是180+2
身高183,就是185-2
这样大家就明白了,每一个整数的身高值都会落在一个尺码表的范围内。
我们用182/5的余数来判断应该向上圆整还是向下圆整,余数大于2就向上圆整,否则向下圆整:
= (Number.IntegerDivide(183,5)+(if Number.Mod(183,5)>2 then 1 else 0))*5
183就会圆整到185,182就会圆整到180;
我们把这个查询变成一个函数:
我们在要查询的顾客表中做身高和体重的判定:
然后我们合并查询尺码表数据:
查询条件就是身高、体重、性别:
展开查询结果:
我们同时把分类数据查询出来,上衣和长裤的尺码都有了。
还有一个问题,男士、女士上衣除了180/96A这样的码,还有XL的尺码,我们就要再多做点工作,把两个XL的尺码表整理到一个表格:
然后我们再把这个数据合并查询到尺码表中,就可以了:
我们再到最后的查询结果中添加展开的XL码列,就可以得到相应的结果:
最终的结果加载到Excel:
我们可以直接在上表添加顾客信息,然后刷新,下表就会给出对应的结果。
下载地址:
链接: https://pan.baidu.com/s/1Qf8QAt_aubdE1TiDjqiGkw 提取码: s4xn
页面更新:2024-03-06
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号