I would like to compute an average by filtering a table with two conditions but, as a newbie, I do not know how to put an IF Condition inside a Filter. Because I know how to compute if I have one filter :
CALCULATE( AVERAGEX(
FILTER( Table, [Duration] >60 ) ) )
But I would like something like that :
CALCULATE( AVERAGEX(
FILTER( Table, IF Position = "Position_A" → [Duration] >50 ELSE [Duration] > 70) ) )
Here is my example :
Thanks in advance for your help and your time
Solved! Go to Solution.
Hi @maxduff59 ,
Please follow these steps:
(1) Create a new measure
AVG =
VAR _VALUE =
IF ( MAX ( 'Table'[Position] ) = "Position A", 50, 70 )
RETURN
CALCULATE (
AVERAGE ( 'Table'[Distance] ),
FILTER (
ALL ( 'Table' ),
(
'Table'[Position] = MAX ( 'Table'[Position] )
&& 'Table'[Duration] > _VALUE
)
)
)
(2)Final output
Best Regards,
Gallen Luo
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @maxduff59 ,
Please follow these steps:
(1) Create a new measure
AVG =
VAR _VALUE =
IF ( MAX ( 'Table'[Position] ) = "Position A", 50, 70 )
RETURN
CALCULATE (
AVERAGE ( 'Table'[Distance] ),
FILTER (
ALL ( 'Table' ),
(
'Table'[Position] = MAX ( 'Table'[Position] )
&& 'Table'[Duration] > _VALUE
)
)
)
(2)Final output
Best Regards,
Gallen Luo
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
User | Count |
---|---|
198 | |
83 | |
76 | |
75 | |
55 |
User | Count |
---|---|
181 | |
105 | |
88 | |
81 | |
73 |