Fabric is Generally Available. Browse Fabric Presentations. Work towards your Fabric certification with the Cloud Skills Challenge.
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.
Check out the November 2023 Power BI update to learn about new features.
Read the latest Fabric Community announcements, including updates on Power BI, Synapse, Data Factory and Data Activator.