销售需求丨周分析
咋说呢,白茶之前分享过关于月度环比、年同比、日环比的问题,有的小伙伴就问我说,咋不弄个周环比呢?白茶一寻思,也
对!不差这一个!本期呢,白茶决定分享一下做周环比的思路。
先来看看本期的案例数据:
可以看得出来,这是一份日期不断档的数据,案例数据很简单。
(示例文件会放到知识星球中,小伙伴们可以搜索“PowerBI丨需求圈”,文章结尾处会有二维码。)咱们先来思考一下思路。在DAX函数中,有过专门的时间智能函数,比如:XTD本期至今(年/季/
月),TOTALMTD,TOTALQTD,TOTALYTD,但是唯独没有“周”这一说,很典型的中国式报表。要进行周分析,就必须要有周维度这个概念!说到这,相信小伙伴们已经反应过来了,添加日期表添加日期表!
将数据导入到PowerBI中如下:
编写如下代码,生成日期表:
日期表 =
GENERATE ( CALENDAR ( MIN ( '示例'[日期] ), //注意:这里需要替换成你自己的数据 MAX ( '示例'[日期] ) ),//注意:这里需要替换成你自己的数据 VAR DA = [Date] VAR YEAR = YEAR ( DA ) VAR QUARTER =
\季度\ VAR MONTE = FORMAT ( DA, \月\ VAR DAY = DAY ( DA ) VAR WEEKID = WEEKDAY ( DA, 2 ) VAR WEEKNUM = WEEKNUM ( DA, 2 ) RETURN ROW ( \年度\ \季度\ \月份\ \日\
\年度季度\ \年度月份\ \星期\
\年周\ ))这里面涉及到一个新的函数→WEEKNUM函数。函数
这个函数,是根据DATE日期列,生成一个年度第几周的函数。它的第二参数只有两个选项:1和2。输入1表示周日是第一天。(国外的星期一)输入2表示周一是第一天。(中国式报表)生成的结果如下:
建立模型关系:
到这里,我们的准备工作基本完成。
开始编写代码:
聚合 =
SUM ( '示例'[销售金额] )
周分析其实主要就是三点:上周同期、周累计、周环比的问题。上周同期没啥好说的,白茶这里就不赘述了。
CALCULATE搭配DATEADD即可。即可
重点说说周累计:
本周至今WTD的代码如下:
WTD =
VAR SELEYEARWEEK = SELECTEDVALUE ( '日期表'[年周] )RETURN CALCULATE ( [聚合], FILTER ( ALL ( '日期表' ),
'日期表'[年周] = SELEYEARWEEK
&& '日期表'[Date] <= MAX ( '日期表'[Date] ) ) )结果如图: