Power BI应用案例:销售帕累托分析(28法则)

一、应用背景

帕累托法则往往称为二八原理,即百分之八十的问题是百分之二十的原因所造成的。帕累托图在项目管理中主要用来找出产生大多数问题的关键原因,用来解决大多数问题。本文利用Power BI进行帕累托分析销售情况,可视化直观找出明星产品。

二、示例数据

所有产品的销售额汇总数据,包括字段产品货号、类别、零售价、销量、销售额等。

三、构建度量值

(1)帕累托图需要的度量值

销售金额 = SUM('明细'[销售额])


累计销售额 =

CALCULATE (

    [销售金额],

    FILTER ( ALLSELECTED( '明细'), SUM ( '明细'[销售额] ) <= [销售金额] )

)


总销售额 = CALCULATE([销售金额],ALLSELECTED('明细'))



累计占比 = divide([累计销售额],[总销售额])


80%直线 = 0.8

(2)前20%销售占比矩阵的度量值

款式数量 = CALCULATE(DISTINCTCOUNT('明细'[货号]),'明细'[销售额]>0)


20%款式数量 = round([款式数量]*0.2,0)


前20%销售额 = SUMX(TOPN([20%款式数量],ALL('明细'[货号]),[销售金额],DESC),[销售金额])


前20%销售占比 = divide([前20%销售额],[销售金额])

四、帕累托分析可视化

(1)帕累托图

货号作为共享轴

销售金额作为列值

累计占比、80%直线作为行值

(2)前20%销售占比矩阵

类别为行

款式数量、20%款式数量、销售金额、前20%销售额、前20%销售占比为值

(3)添加切片器

添加:年份、季节、性别、类别的切片器

五、重点度量值分析

累计销售额 =

CALCULATE (

    [销售金额],

    FILTER ( ALLSELECTED( '明细'), SUM ( '明细'[销售额] ) <= [销售金额] )

)

前面构建的度量值“累计销售额”编写时容易出错,这里分析下度量值的计算方法。

度量值的工作原理分为筛选、计算两步。程序为根据上下文、筛选器函数确定计算范围,然后再执行计算器进行计算。

比如在前面的帕累托图的第一个产品“STY0388”,度量值“累计销售额”的工作过程如下:

(1)上下文。货号作为行上下文传入度量值累计销售额”中。

(2)计算SUM ( '明细'[销售额] )。根据行上下文货号STY0248,计算STY0248所有的销售额总和。注意SUM在这里,并不会受到calculate,filter的上下文影响。

(3)计算与SUM结果比较的 [销售金额]。循环计算所有产品的 [销售金额]。注意行上下文“货号”并没有转换成筛选上下文来计算。

(4)生成Filter后的虚拟表。第(2)、(3)步的计算结果,得出销售金额比货号 STY0248大的所有产品的虚拟表。

(5)第四步计算CALCULATE。计算Filter后的虚拟表的累加[销售金额],得出累计销售金额。

 

延伸:

如果原始数据,并不是产品的销售额汇总,而是订单级的销售记录清单。那么“累计销售额”的编写如下。

累计销售额1 = 
CALCULATE (
         [销售金额],
         FILTER ( ALLSELECTED('销售明细'),
                 SUM ( '销售明细'[销售额] ) <=
                        CALCULATE([销售金额],ALLEXCEPT('销售明细','销售明细'[货号])
                      )
                 )
           )

可以看出这里变化了的是与SUM进行比较的部分

CALCULATE([销售金额],ALLEXCEPT('销售明细','销售明细'[货号]))

因为这里在计算[销售金额]时,只有行上下文货号,需要使用CALCULATE将行上下文,转换成筛选上下文进行计算,才能得出该货号的所有累加销售额。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值