Forum Discussion
measure moving average
- 8 years ago
Hey,
here you will find my pbix file. I just added another page and created a simple table, this way was somewhat easier to read, than deduct the expected result from your graphs (wondering about the size of your screen :-) ).
I created 4 measure, two measures calculate the sum of quantities and sessions for the last 10days. The measure for quantity looks like this (session is similar)
sum quantity last 10 = var mylastdate = LASTDATE(VALUES(Calendar[Date])) var sumQuantity = CALCULATE( SUM('OrderItems'[Quantity]) ,DATESINPERIOD(Calendar[Date], mylastdate,-10,DAY) ) return sumQuantityAnd two measure that calculate the average
- the first one "avg conversion rate simple" dividing by dividing [sum quantity last 10] / [sum sessions last 10]
- the seond one "avgx conversion rate" iterates over the last 10 days and calculates the average from the divisions for each day
Here is the DAX of the first one, I recreated measures as variables to be sure to understand what's happening, I guess you can replace some of the DAX statement by simply using your existing measures:
avg conversion rate simple = var mylastdate = LASTDATE(VALUES(Calendar[Date])) var sumQuantity = CALCULATE( SUM('OrderItems'[Quantity]) ,DATESINPERIOD(Calendar[Date], mylastdate,-10,DAY) ) var sumSessions = CALCULATE( SUM('Sessions'[Sessions]) ,DATESINPERIOD(Calendar[Date], mylastdate,-10,DAY) ) return DIVIDE(sumQuantity, sumSessions, BLANK())Here is a screenshot of the table i used to validate the calculations:
One comment:
Wrong:
Using LastDate(...) -10 basically leads to a timeframe that contains 11 days, the lastdate (date of the current row) and 10 days before;-)Hopefully this is what you are looking for
Regards
Tom
Sometimes the nature of the expression in this case the Division of sums does not require the somewhat more complex solution using the iterator AVERAGEX. So go with the simple one 😉
Regards
Tom
Tom-
You ROCK. THANK YOU! I learned a TON from this!