我们有时候需要对数据表中的客户进行打标分析(比如ABC分析),一般是根据收入范围,订单量范围等。常见的方法一般是直接在Excel表里面新建一列,利用IF函数判断该客户的标签,稍微简单一点的是用SWITCH函数进行判断,再高级一点的办法是用VLOOKUP匹配区间来打标(可点击链接查看或者自行百度)。
但是以上方法均是在数据源里面新建列,一旦打标完成,则在分析的时候无法调整(比如说想改变打标规则,聚合维度等是无法实现的),只能重新打标。
现在借助Dax数据分析语言创建一个度量值可以解决动态分组归类的问题,可以任意改变打标规则,切换聚合维度和度量值。
需要先准备一个数据表名为“范围”:
准备好模拟数据源(第二列应该是“客户名称”,图示有误,后续均是这个,需注意):
将该表和数据表上传到数据模型:
接下来对数据表改名:
先进入到数据模型中
然后双击表名即可更改:
然后创建度量值:
先创建一个对单量汇总的度量值:
同样的步骤,在新建我们的动态分组度量值公式
=SUMX (
'范围',
CALCULATE (
[单量汇总],
FILTER (
VALUES ( '订单明细'[客户名称] ),
AND ([单量汇总] >= '范围'[最小], [单量汇总] < '范围'[最大] )
)
)
)
以上准备工作做完了,我们现在可以拿这个度量值分析了。
先建个透视,然后将“范围”表的第一列放在透视表的行上即可对该度量值进行透视分析。
按照图示把字段摆好,就可以灵活分析了