之前所有年份的平均每年

时间:2021-03-08 05:51:24

标签: powerbi dax

我有一个表格,其中包含从 2015 年 1 月 1 日到当前的销售数据(截至今天是 2021 年 3 月 7 日)。我还有一个单独的日期表,与销售日期相关联。

我从 2015 年到 2020 年每年的总销售订单如下:

  • 2015 年:1847 年
  • 2016 年:1698
  • 2017 年:1134
  • 2018 年:1036
  • 2019 年:1127
  • 2020 年:1136
  • 2021:121

如何计算前 5 年(2015 年至 2020 年)的平均每年订单总数?平均每年应为 1,330 个订单。如果我使用下面的公式,它会考虑我不想要的当前年份(2021 年),因为 2021 年尚未完成。

Total Orders = DISTINCTCOUNT('Sales'[Order])

Avg. Annual Orders = AVERAGEX(
    VALUES('Date'[Year]),
        [Total Orders])

2 个答案:

答案 0 :(得分:1)

您可以使用下面的测量代码-

average_2015_2020 = 

var total_order = 
CALCULATE(
    SUM(Sales[order]),
    FILTER(
        ALL(Sales),
        Sales[year] >= 2015 && Sales[year] <= 2020
    )
)

RETURN DIVIDE(total_order,6,0)

这是输出-

https://laravel.com/docs/8.x/eloquent-relationships

注意从2015年到2020年,实际上是6年,因此我将总订单分成6个而不是5个。如果需要,您可以自己正确调整逻辑。

答案 1 :(得分:0)

假设您的 Total Orders 度量按预期工作,您可以像这样平均前几年:

AvgOrderPrevYears =
VAR CurrYear = MAX ( 'Date'[Year] )
VAR PrevYears = CALCULATETABLE ( VALUES ( 'Date'[Year] ), 'Date'[Year] < CurrYear )
RETURN
    AVERAGEX ( PrevYears, [Total Orders] )

Table visual