Forum Discussion
Value difference by Date and categorial variable
Hi all
I want to calculate the difference between values, based on the date as well as another categorial variable.
All that should be displayed in a waterfall diagram (column Expected Result). I attached a screenshot with dummy data and the expectet outcome.
Thanks in advance!
 
- Anonymous5 years ago
Hi Anonymous ,
Based on your description, you can do some steps as follows.
- Create a column to mark month.
Month = MONTH('Diff'[Date])2. Create a new measure.
Test Value =
var x1=MAXX(FILTER(ALL(Diff),[Month]=SELECTEDVALUE(Diff[Month])&&'Diff'[Cat]=SELECTEDVALUE(Diff[Cat])),'Diff'[Value])
var x2=MAXX(FILTER(ALL(Diff),[Month]=SELECTEDVALUE(Diff[Month])-1&&'Diff'[Cat]=SELECTEDVALUE(Diff[Cat])),'Diff'[Value])
return
x1-x2Result:
Hope that's what you were looking for.
Best Regards,
Yuna
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
5 Replies
- amitchandakSuper User
Anonymous , Try a new column like
new column =
var _max = maxx(filter(Table, [cat] =earlier([cat]) && [Date] <earlier([Date])),[Date])
return
[value] - maxx(filter(Table, [cat] =earlier([cat]) && [Date] =_max),[value])- AnonymousNot applicable
amitchandakThank you very much for your reply!
Unfortunately I get an error ("syntax for return is incorrect").
Thanks again 🙂
- AnonymousNot applicable
Hi Anonymous ,
Based on your description, you can do some steps as follows.
- Create a column to mark month.
Month = MONTH('Diff'[Date])2. Create a new measure.
Test Value =
var x1=MAXX(FILTER(ALL(Diff),[Month]=SELECTEDVALUE(Diff[Month])&&'Diff'[Cat]=SELECTEDVALUE(Diff[Cat])),'Diff'[Value])
var x2=MAXX(FILTER(ALL(Diff),[Month]=SELECTEDVALUE(Diff[Month])-1&&'Diff'[Cat]=SELECTEDVALUE(Diff[Cat])),'Diff'[Value])
return
x1-x2Result:
Hope that's what you were looking for.
Best Regards,
Yuna
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
- AnonymousNot applicable
Hi, thank you very much for your help!! It worked perfectly 🙂
Thanks again!
- Ashish_MathurSuper User
Hi,
Try this calculated column formula
=data[value]-lookupvalue(data[value],data[date],calculate(max(data[date]),filter(data,data[cat]=earlier(data[cat])&&data[date]<earlier(data[date]))),data[cat],data[cat])
Hope this helps.