Forum Discussion
3 months rolling average value
- 1 year ago
Hi Anonymous
You can make a few modifications to your DAX formula, and it should work correctly for you. I have also compared the results, which you can see in the attached screenshot and Power BI file for verification.
3MonthRollingAverage = VAR CurrentDate = MIN('175HPTractors'[DATESEEN]) VAR StartDate = DATE(YEAR(CurrentDate), MONTH(CurrentDate) - 2, 1) -- StartDate of previous month VAR EndDate = EOMONTH(CurrentDate, 1) -- EndDate of next month RETURN CALCULATE( AVERAGE('175HPTractors'[PRICE]), FILTER( ALL('175HPTractors'), '175HPTractors'[DATESEEN] >= StartDate && '175HPTractors'[DATESEEN] <= EndDate ) )Best Regards,
Muhammad YousafIf this post helps, then please consider "Accept it as the solution" to help the other members find it more quickly.
- Anonymous1 year ago
Hi Anonymous
You can use the DATESINPERIOD function, which returns the date of the period:rolling average = CALCULATE( AVERAGE('Table'[value]), DATESINPERIOD( 'Table'[Date], MAX('Table'[Date]), -3, MONTH ) )Best Regards,
Jayleny
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi Anonymous
I would assume that it would likely be your CurrentDate variable. It's hard to tell without some visual indicators but because the MIN or MAX of a value within a visual context could be deceiving and be applied per value shown, that's likely your culprit. Perhaps try to adjust the CurrentDate variable to something like this:
VAR CurrentDate = CALCULATE(MIN('175HPTractors'[DATESEEN].[Date]), ALLSELECTED())
If you could spare some time to build a sample input and output we could perhaps see the issue more clearly.