一、背景
最近刚好在做一个简单同比预测的模型,预测方法很简单,就是累计同比预测,把MTD展示出来。
二、数据源
1、日期表:Calendar
2、事实表1:Data(基础数据)
3、事实表2:Target(目标)
4、关系视图
三、上DAX
2、度量对应图示中元素
4、基础度量:M001_AC
M001_AC = SUM('Data'[value])
5、关键度量:M002_Forecast,同比预测。
M002_Forecast = VAR DAY_MAX = CALCULATETABLE ( LASTDATE ( 'Data'[dates] ), ALL ( 'Calendar' ) )VAR DAY_MIN = CALCULATETABLE ( STARTOFYEAR ( 'Calendar'[Dates] ), ALLSELECTED ( 'Calendar' ) )VAR DATE_AC = DATESBETWEEN ( 'Calendar'[Dates], DAY_MIN, DAY_MAX )VAR DATE_PRE = DATESBETWEEN ( 'Calendar'[Dates], DATEADD ( DAY_MIN, -1, YEAR ), DATEADD ( DAY_MAX, -1, YEAR ) )VAR MTD_AC = CALCULATE ( 'Measure'[M001_AC], DATE_AC )VAR MTD_PRE = CALCULATE ( 'Measure'[M001_AC], DATE_PRE )VAR YOY = DIVIDE ( MTD_AC, MTD_PRE )VAR DAY_AC = MAX ( 'Calendar'[Dates] )VAR PRE = CALCULATE ( 'Measure'[M001_AC], DATEADD ( 'Calendar'[Dates], -1, YEAR ) )RETURN IF ( DAY_AC <= DAY_MAX, BLANK (), PRE * YOY )
6、M005_MTD_Forecast:同比预测月累计(MTD)折线显示度量。
7、静态结果截图
四、总结
1、业务模型非常简单,采用累计同比预测法。
2、主要DAX驱动可视化的应用,对每个元素对应的DAX要充分理解
3、注意观察ALL和ALLSELECTED函数的使用位置,
4、日期的判定,注意观察’Calendar’[Dates]与 ‘Data’[dates]使用位置。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦