[英]Power Bi , Average constant values in column rather than rolling average?
[英]Power BI Rolling Average DAX to plot correctly on Column Chart
我对第3个滚动平均值的测量存在问题,以便在图表上正确显示它。
数据模型在这里:
https://docs.google.com/spreadsheets/d/1naChcuZtjSbk0pVEi1xKuTZhSY7Rpabc0OCbmxowQME/edit?usp=sharing
我使用下面的公式通过度量计算3个月的平均值:
Product3Mth = CALCULATE(SUM('Table'[Product A uncum]);DATESINPERIOD('Table'[Date];LASTDATE('Table'[Date]);-3;MONTH))/3
当我将其绘制为表格时,它显示每个月的正确值。
但是当我在柱形图中与产品A累计一起绘制时,我得到错误的值,即产品unaccum / 3的值为产品unaccum / 3的3个连续值的总和。
我应该在DAX中更改什么才能使其正确显示? 请帮忙
当涉及到源数据中日期的格式以及您选择在可视化中显示Date列的方式时,您似乎偶然发现了相当多的Power BI“陷阱”。 但我想我已经明白了。 这是我的结果:
只是为了验证一些数字:
(4043 + 20 + 158) / 3 = 1469
(189+ 200 + 207) / 3 = 199
以下是详细信息:
我使用了这个数据集,我稍微更改了名称,以便更容易编写DAX表达式并使用Get Data
导入它
Date unAcc ACc
01-10-2017 00:00 4043 4043
01-11-2017 00:00 205 4248
01-12-2017 00:00 158 4406
01-01-2018 00:00 142 4548
01-02-2018 00:00 312 4860
01-03-2018 00:00 258 5118
01-04-2018 00:00 176 5294
01-05-2018 00:00 210 5504
01-06-2018 00:00 189 5693
01-07-2018 00:00 200 5893
01-08-2018 00:00 207 6100
由于我不知道的原因,我遇到了与Date
列相同的问题。 但是根据Power BI社区的一些提示,我创建了一个 Date2
是这样的:
Date2 =
DATE('Table1'[Date].[Year];'Table1'[Date].[MonthNo];1)
Moving_Average_3_Months =
CALCULATE (
AVERAGEX ( 'Table1'; 'Table1'[unAcc] );
DATESINPERIOD (
'Table1'[Date2];
LASTDATE ( 'Table1'[Date2]);
-3;
MONTH
)
)
现在,如果您插入column chart
并将Date2
分配给Axis
和Moving_Average_3_months
以及unAcc
to Values
,您将得到:
这不是我们想要的。 因此,转到可视化设置并将Date2
从Date Hierarchy
更改为Date2
如下所示:
就是这样:
以下是整个表格,因此您可以看到数字是正确的:
在你的情况下,也许你唯一需要做的就是最后一部分。
请不要犹豫,告诉我它是如何为您服务的!
DATESINPERIOD和LASTDATE函数将无法正常工作,因为“表格”[日期]不是连续的日期范围。 这些功能需要基于日期表。
尝试这样的事情
Product3MthAVG =
VAR rowDate = 'Table'[Date]
RETURN
CALCULATE (
SUM ( 'Table'[Product A unaccum] );
FILTER (
'Table';
'Table'[Date]
< DATE ( YEAR ( rowDate ); MONTH ( rowDate ) + 1; DAY ( rowDate ) )
&& 'Table'[Date]
>= DATE ( YEAR ( rowDate ); MONTH ( rowDate ) - 2; DAY ( rowDate ) )
)
)
/ 3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.