【问题标题】:How to calculate yearly average per product?如何计算每个产品的年平均值?
【发布时间】:2019-07-23 14:21:21
【问题描述】:

我是 Power BI 和语言 DAX 的新手。因此,我发现很难对不同产品进行简单的年度平均。

到目前为止,我已经尝试了 AVERAGEX 和 CALCULATE 函数的不同组合,但没有任何运气。

我的桌子:

Date       | Product | Value
2014-05-06   Cheese    10
2014-08-11   Cheese    12
2015-04-11   Cheese    9
2014-01-22    Milk     4
2014-12-24    Milk     8

我尝试创建的输出:

Date       | Product | Value | Yearly_AVG
2014-05-06   Cheese    10         11
2014-08-11   Cheese    12         11
2015-04-11   Cheese    9          9
2014-01-22    Milk     4          6
2014-12-24    Milk     8          6

最后,我的数据集中没有日历表。

【问题讨论】:

  • 你有日历表还是只有这个?另外,您是要编写度量还是计算列?
  • 没有日历表,我不确定计算列或度量是否最适合我的情况,但我可以想象 DAX 代码在这两种情况下都是相似的。

标签: powerbi average dax


【解决方案1】:

对于一个度量,你可以这样写:

YearAvg =
VAR CurrProduct = VALUES ( Sales[Product] )
VAR CurrYear = YEAR ( MAX ( Sales[Date] ) )
RETURN
    CALCULATE (
        AVERAGE ( Sales[Value] ),
        ALLSELECTED ( Sales ),
        Sales[Product] IN CurrProduct,
        YEAR ( Sales[Date] ) = CurrYear
    )

【讨论】:

  • 谢谢!每月平均需要更改多少代码?
  • 要么将 YEAR 替换为 MONTH,要么添加另一个变量 CurrMonth 和条件 MONTH(Sales[Date]) = CurrMonth,具体取决于您是要按月平均还是按年平均。
猜你喜欢
  • 2019-09-02
  • 1970-01-01
  • 2020-07-23
  • 1970-01-01
  • 1970-01-01
  • 2019-12-05
  • 1970-01-01
  • 1970-01-01
  • 2020-07-05
相关资源
最近更新 更多