美文网首页
PowerBI 全动态伸缩式 TOP-N 排名矩阵

PowerBI 全动态伸缩式 TOP-N 排名矩阵

作者: PowerBI战友联盟 | 来源:发表于2018-04-11 06:51 被阅读906次

不管有多少个品牌,门店,产品SKU等,最重要的有时候就是看 TOP N 的值以及变化。PowerBI在计算排名时给出了非常强大的支持,可以远远超越Excel传统的静态计算。

本案例来自某企业真实案例,感谢提供此富有价值的业务问题的朋友,牛。

如果说需要什么案例来说明PowerBI不仅仅是可视化工具,还有非常强大的建模计算分析功能,那本案例可以作为其中之一。如果您正在评估BI工具的能力,不妨用这个模型来测试您的BI工具是否可以实现类似效果。

介绍

如下效果所示:

业务人员通过:

  1. 选择排名的范围,如:TOP 1~3,或含第4,5等,通过滑杆进行;
  2. 选择评估的指标,如:销售额,利润,利润率;
  3. 选择评估的业务对象,如:客户,产品,城市,品牌,门店;
  4. 选择评估的范围,如:年份,客户细分,客户职业等;

根据这些业务内容,动态生成整个矩阵,矩阵的结果显示了在不同维度下,业务人员关注的业务元素的前N名到底是谁,与去年同期的对比如何。

模型亮点

该模型可以:

  • 快速从海量业务元素中找出最重要的几个(前N个);
  • 可伸缩式,即 N 的范围是可调的;
  • 全动态式,评估的 元素指标 是可变的。

这样一来,就不必建立多个矩阵,而只需要一个矩阵变可以完成所有工作任务。

数据结构

本案例延续这里一贯的DAX高阶无侵入式建模设计风格,如下:

采用没有计算列的结构,完全使用度量值进行动态计算。

基本指标为常见业务指标,与本例实质关系不大,本例以排名作为主题,囊括了相关的几个度量值。

核心 DAX 表达式

本例的思路如下:

  • 根据用户的动态选择,锁定需要进行排名的元素集合;
  • 在当前的唯一位置,计算出特定的元素,如:客户张三;
  • 根据计算出的元素,再计算相关的指标。

因此,最重要的度量值是如何计算特定的元素,如下:

通过该表达式,计算出具体实体元素,然后再分别计算其指标,如下:

其他度量值不再列出,可在源文件中查看。

可以注意到矩阵的列标题为:TOP1,TOP2,TOP3,第4名,这里是将可变的名称作为矩阵的头部,起到筛选作用。

缺陷

延伸思考:
本案例的复杂性并非结束,细心的伙伴可以想到,如果存在并列排名(如:并列第一或并列第二怎么办),如果不显示,或错过真实信息;如果显示,应该在第三名显示并列第二名的信息,这将导致原有公式全部失效,因为原有公式是计算当前位置名次的。
仅仅是这一实际缺陷就将导致本案例需要更复杂的DAX运算,解决这一缺陷的时间可能远远超过不考虑这个缺陷的实现时间。

总结

在实际业务中,首先得到一个需求,就是对某类业务元素排序;
而后该需求被扩展了,成了按照另一类业务元素排序;
而后该需求又被扩展了,成了按照某类业务元素按照某种指标来排序;
在多个SKU中保持锁定TOP N的门店或渠道以便实施业务管理。

本案例再次印证 PowerBI 可以和业务紧密结合,而不只是做个图。

<div style="color:red">如果您喜欢本文或希望进一步深入研究,可以分享转发后私信获取源文件。</div>

相关文章

网友评论

      本文标题:PowerBI 全动态伸缩式 TOP-N 排名矩阵

      本文链接:https://www.haomeiwen.com/subject/iinohftx.html