Forum Discussion
How to summarize /group by/ count measure values
Hi all,
I have trouble with grouping measure values. I have table events with columns: Product, measure Price1 (p1) and then created measure Price2 (p2) from p1, and then Differece between these two prices (Diff), also a measure:
Product
| p1 (measure) | p2 (measure) | Diff (p1-p2) |
| a1 | 5,525 | 5,515 | 0,010 |
| b2 | 5,535 | 5,515 | 0,020 |
| b4 | 5,525 | 5,505 | 0,020 |
| b6 | 5,520 | 5,510 | 0,010 |
| c3 | 5,520 | 5,500 | 0,020 |
| c5 | 5,525 | 5,520 | 0,005 |
| a5 | 5,530 | 5,510 | 0,020 |
| d2 | 5,505 | 5,500 | 0,005 |
| d4 | 5,525 | 5,520 | 0,005 |
Now I want to group (count) these differences in this way, Value 0,005 is shown 3 times in table, 0,010 is shown 2 times, etc.:
| Diff | Total |
| 0,005 | 3 |
| 0,010 | 2 |
| 0,020 | 4 |
but it doesn't allow me to group measure valus.
(The CALCULATE function cannot be used in an expression argument for the GROUPBY() function.)
Any ideas how to do this?
Thanks!
4 Replies
- johnt75
Super User
Have a look at the dynamic segmentation DAX pattern.
- FreemanZ
Super User
hi Anonymous
following your description, you may try to create a measure like this:
Measure = VAR _table1 = ADDCOLUMNS( SUMMRIZE( Products, Products[Product], Products[P1] ), "p2", [p2] ) VAR _table2 = ADDCOLUMNS( _table1, "Diff", Products[p1]-[p2] ) VAR _diff = SELECTEDVALUE(SegmentTable[Diff]) RETURN COUNTROWS(FILTER(_table2), [Diff]= _diff )The measure is supposed to plot a table visual with the SegmentTable[Diff] column. The Products table and SegmentTable are unrelated.
if case of issue, please consider providing some sample data.
- AnonymousNot applicable
Hi FreemanZ ,
Unfortunatelly it is not working. Also p1 is a measure, and it is all one same table (Events).
it is not allow me to add in selectedvalue a measure
- AnonymousNot applicable
I resolved this issue in a way that I created new table from existing one with a Diff as a column. And then regular DISTINCTCOUNT works.