Forum Discussion
rolling average for 3 months showing same value
- 1 year ago
You can try
Rolling Average = VAR DatesToUse = WINDOW ( -2, REL, 0, REL, ALLSELECTED ( 'Date'[Year], 'Date'[Month number] ), ORDERBY ( 'Date'[Year], ASC, 'Date'[Month number], ASC ) ) VAR Result = AVERAGEX ( DatesToUse, CALCULATE ( DISTINCTCOUNT ( 'Table'[User ID] ) ) ) RETURN Result - 1 year ago
Hello Anonymous ,
You can use below dax for your purpose , please replace table names and fileds:
rolling_3_month_Avg =AVERAGEX(WINDOW(-2,REL,0,REL,ALLSELECTED(Test_Avg[Month_number],Test_Avg[Year],Test_Avg[Users]),ORDERBY(Test_Avg[Month_number]),PARTITIONBY(Test_Avg[Year])),CALCULATE(AVERAGE(Test_Avg[Users])))Did I answer your query ? Mark this as solution if this helps, appreciate your Kudos.
Cheers
- 1 year ago
Hello Anonymous ,
It is giving as expected , here is the illustration, please suggest if you have different logic
Cheers
- Anonymous1 year ago
Hi Anonymous ,
Please try the following dax.Rolling Average (3 Months) = VAR difference = DATEDIFF(MINX(ALL('Table'),'Table'[Date]),MAX('Table'[Date]),MONTH) --The difference in months from the min date. VAR _value = CALCULATE(DISTINCTCOUNT('Table'[Users]) ,DATESINPERIOD('Table'[Date],MAX('Table'[Date]),-3,MONTH)) --Total value of 3 months. RETURN SWITCH( TRUE(), difference=0,_value, difference=1,_value/2, difference>1,_value/3 )Please see the attached pbix for reference.
Best Regards,
Dengliang Li
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi Anonymous ,
Here is a measure for calculating a 3-month rolling average at the month level:
Rolling Average (3 Months) =
VAR CurrentMonth = MAX('Calendar'[Date])
RETURN
AVERAGEX(
DATESINPERIOD('Calendar'[Date], CurrentMonth, -3, MONTH),
CALCULATE(SUM('FactTable'[Value]))
)
This measure calculates the rolling average by using the DATESINPERIOD function to define a 3-month window and then applies AVERAGEX to compute the average for the specified period. The calendar table ensures the calculation respects the relationship with the fact table.
Best regards,