Power BI数据分析:如何快速找出连续下降的数据?
源于知识星球中遇到的一个问题,星友想通过PowerBI,找出最近3个月销量持续下滑的产品都有哪些?这个问题比较典型,也很实用,所以这里写篇文章介绍一种思路,希望对你有所帮助。
最近3个月数据持续下滑,可以转换为最近3个月环比持续为负数,那么在计算逻辑上,就可以先计算出环比,然后统计某产品最近3个月每个月的环比,小于0的数量,如果等于3,那么就是最近3个月连续下降。
以常用的这个产品销售数据模型为例,找出最近3个月销售持续下滑的产品有哪些?
先写几个基础度量值来计算环比:
本月销售 = SUM( '订单表'[销售额] )
上月销售 =
CALCULATE( [本月销售] , DATEADD( '日期表'[日期],-1,MONTH ) )
环比 = DIVIDE( [本月销售]-[上月销售],[上月销售] )
然后写一个度量值来判断每个产品是否持续下降:
最近3个月是否持续下降 =
VAR N=3 //控制最近N月
VAR t1= //获取最近N个月的年度月份的不重复列表
SUMMARIZE(
FILTER('日期表','日期表'[日期]>=EDATE(TODAY(),-N+1)&&'日期表'[日期]<=TODAY()),
'日期表'[年度月份])
VAR t2=ADDCOLUMNS(t1,"环比",[环比]) //计算最近N个月每个月的环比
VAR t3=FILTER(t2,[环比]<0) //筛选最近N个月环比小于0的行
RETURN IF(COUNTROWS(t3)=N,1) //如果最近N个月环比小于0的行数等于N,则是全部下降,返回1
主要的逻辑已经在度量值中做了注释,其基本思路就是本文开头提到的逻辑,用DAX代码表达出来就行了。
这里用N作为一个变量,可以灵活控制最近N个月,如果需要动态的N月控制,同样可以使用参数来控制,无论是多少个月,都可以通过这种方式快速计算出连续下滑的产品,比如将N改为2,就是最近2个月连续下降的产品。
利用产品名称做个表格,将是否持续下降的度量值放到筛选器中,只筛选结果为1的数据,即可动态显示满足条件的产品(参考:Power BI如何动态展示表?送你两种方法):
掌握了这个思路以后,其实不只可以计算持续下滑,持续上升同样可以按这个思路,比如也可以统计消费持续下滑/升高的客户,绩效持续恶化/增长的员工等,都可以帮我们快速找出经营异常的数据。
帮你从0到1,轻松上手PowerBI
赞 (0)