cancel
Showing results for
Did you mean:
Helper I

## Calculating difference from filtered mean/average

I am stuck trying to create either a calculated column or a measure that will give me an array of values calculated from two columns in a table.  The first column contains the groups in which the values fall (Group), and the second contains the values (Value).  What I want to do is to calculate the mode of the values per group and then, per row, subtract the value from that mode.

Here is an example of how the calculations would look (the column Mode/Group isn't necessary and can be a variable)
'Data table'

 Group Value Mode/group Calculated Value 1 7 4 3 2 2 2 0 3 6 6 0 1 4 4 0 2 4 2 2 1 4 4 0 3 6 6 0 2 2 2 0

I want to be able to later show the maximum, minimum, and average value of this difference per group, and also to be able to filter it for other columns in this table. Therefore I'm not sure if a calculated column or a measure would be better.

Thanks for any help.

1 ACCEPTED SOLUTION
Super User

Try this for your calculated column

``````New column =
VAR mode_ =
MINX (
TOPN (
1,
CALCULATETABLE (
DISTINCT ( Table1[Value] ),
"Frequency", CALCULATE ( COUNT ( Table1[Value] ) )
),
ALLEXCEPT ( Table1, Table1[Group] )
),
[Frequency], 0
),
Table1[Value]
)
RETURN
Table1[Value] - mode_
``````

and check this out for the MODE pattern

https://www.daxpatterns.com/statistical-patterns/#

 Please accept the solution when done and consider giving a thumbs up if posts are helpful.  Contact me privately for support with any larger-scale BI needs, tutoring, etc. Cheers

2 REPLIES 2
Helper I

Thanks, that did the trick.

Super User

Try this for your calculated column

``````New column =
VAR mode_ =
MINX (
TOPN (
1,
CALCULATETABLE (
DISTINCT ( Table1[Value] ),
"Frequency", CALCULATE ( COUNT ( Table1[Value] ) )
),
ALLEXCEPT ( Table1, Table1[Group] )
),
[Frequency], 0
),
Table1[Value]
)
RETURN
Table1[Value] - mode_
``````

and check this out for the MODE pattern

https://www.daxpatterns.com/statistical-patterns/#

 Please accept the solution when done and consider giving a thumbs up if posts are helpful.  Contact me privately for support with any larger-scale BI needs, tutoring, etc. Cheers

Announcements

#### Microsoft Build is May 24-26. Have you registered yet?

Come together to explore latest innovations in code and application development—and gain insights from experts from around the world.

#### Charticulator Design Challenge

Put your data visualization and design skills to the test! This exciting challenge is happening now through May 31st!

#### What difference can a User Group make for you?

At the monthly call, connect with other leaders and find out how community makes your experience even better.

#### Check it out!

Mark your calendars and join us on Thursday, May 26 at 11a PDT for a great session with Ted Pattison!

Top Solution Authors
Top Kudoed Authors