美文网首页Power BI干货PowerBI专栏
PowerBI帕累托分析,数据相等时的分类问题

PowerBI帕累托分析,数据相等时的分类问题

作者: PowerBI星球 | 来源:发表于2020-10-21 21:17 被阅读0次

    最近有几个星友提到,做帕累托分析时,当有数据相等时,累计占比计算不正确,不知道是怎么回事,PowerBI为什么会出现这个“错误”呢?你是不是也碰到过这个问题?

    这篇文章就来谈谈这是怎么回事,以及如何解决这个问题。

    以下面这个简单的数据为例,

    可以看到,在这个数据中,有几种产品的销售额是相等的。

    进行帕累托分析时,正常写的度量值是这样的:

    累计收入 =

    VAR sales=[收入]

    RETURN

    CALCULATE(

        [收入],

    FILTER(ALL('产品表'),'产品表'[销售额]>=sales)

    )

    累计占比 =

    DIVIDE(

        [累计收入],

        CALCULATE([收入],ALL('产品表'))

    )

    ABC 分类 =

    SWITCH(TRUE(),

    [累计占比]<=0.7,"A",

    [累计占比]<=0.9,"B",

    "C"

    )

    用矩阵展示结果如下:

    从上图可以看出,第二行和第三行的数据相同,但累计收入和累计占比都是一次性把相等的数据都加上了,这样第二行的结果就不太符合常识,下面的数据行中,相等数据也同样是类似的问题。

    用图表来展示这个帕累托图,效果是这样的:

    并不是一条平滑上升的帕累托曲线,是不是看起来非常奇怪!

    为什么会有这个问题呢?其实答案就在上面我们写的度量值的逻辑里面。

    可以再去看一下累计收入这个度量值,它的计算逻辑是:大于等于当前产品收入的数据,汇总到一起,那么无论是上面的第二行的A7、还是第三行的A11,都是把收入大于等于70的产品的收入汇总到一起,度量值的逻辑决定了最终的结果。

    所以,这个度量值的计算并没有错误,并且在计算所属的类别时,相同收入的产品属于相同的类别,这个也没有问题。

    如果你觉得这种累计的结果不能接受,那么,对于数据相等的类别,需要提供额外的计算逻辑来区分。

    比如,当产品收入相等时,按照产品的索引顺序累加,根据这个逻辑来优化度量值。

    这个度量值在筛选应汇总哪些产品的收入时,分为两个计算逻辑之和:

    大于当前产品销售额的产品

    等于当前产品的销售额,并且小于等于当前产品序号的产品

    这样就不存在累计收入相同的问题了,然后对应写出累计占比和ABC分类,结果如下:

    是不是看起来舒服多了。

    这样就解决了数值相等时,累计数据不正常的问题。

    但这样仍存在一个小问题,比如上面的A8和A9, 销售额都是40,但却被分为了两个不同的类别,A8属于A类产品,而A9属于B类产品。

    一个解决的办法就是,累计收入和累计占比按照优化后的度量值的逻辑,而分类依然按照原来的累计占比来划分。

    不过细节的处理,具体应该如何做,取决于自己的业务逻辑和划分标准,先想清楚你需要的业务逻辑,然后顺着这个逻辑,用DAX表达出来就可以了。

    很多人其实连自己的业务需求都还没有想清楚,对于度量值也是简单地套用,并没有真正理解它的计算逻辑,一旦结果不符合自己的期望,就简单的认为是度量值计算错误或者模型有问题,这结论显然是过于草率了。

    所以,在利用PowerBI分析问题时,为了使最终的分析结果符合你的期望,请确保:

    1、你已经想清楚了业务需求逻辑;

    2、你已经理解了度量值计算逻辑;

    3、1和2的逻辑是一致的。

    -精彩推荐-

    Power BI应用技巧:动态显示最近N天的数据

    PowerBI数据分析和可视化实战案例

    Power BI商业数据分析模型:RFM客户价值分析

    如何用PowerBI 打造高大上的财务报表分析报告?

    采悟 from PowerBI星球

    相关文章

      网友评论

        本文标题:PowerBI帕累托分析,数据相等时的分类问题

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