cancel
Showing results for
Did you mean:

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Helper I

## Calculating Average of categories in DAX

Hi everyone,

I need to solve an issue that I am having with DAX, but I cant find the right query.
To give you some context: I have different regions in my data that have the values T100, T200, T300 and so on. They can be found in the column RegionLevel2 in the table Geography. Then , in the same table there is a column called TerrLevel1 that has the territories. Each region has multiple territories. So for example the territories for region T100, are T101, T102, T103 and so on. For each of these territories I have calculated a Score, based on their individual sales. It is a measure called Score1 and working fine. Now I need to calculate the score for the regions. This score is based on the average of the sales of a regions territories. So in the case of T100, its score would be the average of the Score1 of T101, T102, T103 and so on. I have tried these DAX

AVERAGEX(Geography[Score1])

AVERAGEX(all(Geography[TerrLevel1]), [Score1])

AVERAGEX(VALUES(Geography[TerrLevel1]), [Score1])

CALCULATE(
AVERAGEX(Geography, [Score1]),
ALL(Geography[TerrLevel1]))

IF(HASONEVALUE(Geography[RegionLevel2]), CALCULATE(AVERAGEX(VALUES(Geography[TerrLevel1]), [Score1]), Geography[RegionLevel2] = VALUES(Geography[RegionLevel2]), ALL(Geography[TerrLevel1])), BLANK())

SUMMARIZE(
Geography,
[RegionLevel2],
Geography[TerrLevel1],
"MEASURE",[Score1])
return
AVERAGEX(table_,  [MEASURE])

but it is not giving me the right result. I guess i need to filter somehow to group the right territories with their region but I cant figure out how. Also the measure Score1 is based on several other measures that have filters like Geography[Region_LINE] = "T" (its to filter for the regions that start with T only) and CALCULATE([Product2 40%], REMOVEFILTERS(GEOGRAPHY[DES_TERRNIVEL1_FILTER], GEOGRAPHY[DES_TERRNIVEL2_FILTER]), REMOVEFILTERS(DIM_GEO_NO_RLS[DES_GEONIVEL3_FILTER], DIM_GEO_NO_RLS[DES_GEONIVEL4_FILTER]) . Maybe I have to include them? I could not find a way to make it work though.

I would appreciate any kind of help. Thank!
1 ACCEPTED SOLUTION
Community Support

Hi @f_r_1998 ,
Based on your description, I created the following test data:

Create a measure

``````RegionScore =
CALCULATE(
AVERAGE(Geography[Sale]),
ALLEXCEPT(Geography,Geography[Region])
)``````

Final output

You can try the above test as I can't tell what your other filters are, and you can follow the above logic to write the code that works for you.

Best regards,

Albert He

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly

Community Support

Hi @f_r_1998 ,
Based on your description, I created the following test data:

Create a measure

``````RegionScore =
CALCULATE(
AVERAGE(Geography[Sale]),
ALLEXCEPT(Geography,Geography[Region])
)``````

Final output

You can try the above test as I can't tell what your other filters are, and you can follow the above logic to write the code that works for you.

Best regards,

Albert He

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly

Announcements

#### Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.