Forum Discussion

SUMESHKUMAR22's avatar
SUMESHKUMAR22
Helper IV
3 years ago
Solved

Calculate average based on same category

Hi Everyone,
Good day!
As per the below snapshot I want to create a new measure where the marked percentage numbers should get averaged beacuse it lies under the same category of column A but column B is divided into sub category so, I have to average those numbers but in the total section it should take one percentage (like 40.00% + 53.33% = 46.66% but in the total average calcualtion it should be considered once  .

Margin formula = c-d/d




Thanks in advance,
Sumesh

6 Replies

  • Greg_Deckler's avatar
    Greg_Deckler
    Community Champion

    SUMESHKUMAR22 Try:

    Measure = 
      VAR __a = SELECTCOLUMNS('Table'[a])
      VAR __Result = 
        AVERAGEX(
          SUMMARIZE(FILTER(ALL('Table'),[a] IN __a),[a],[b], "__T_margin%",[T_margin%]),
          [__T_margin%]
        )
    RETURN
      __Result

     

    • SUMESHKUMAR22's avatar
      SUMESHKUMAR22
      Helper IV

      Hi Greg_Deckler ,
      Thanks for prompt response!
      The final total avergae should come up 48.70% instead of 49.56% . As we will not consider the repetitve percentage values as per the Table[a] disitnct values.

      • SUMESHKUMAR22's avatar
        SUMESHKUMAR22
        Helper IV

        Hi Greg_Deckler , Anonymous 

        Below is the total average (Result), I'm expecting in your above measure.
        The blank that is coming shouldn't come up and give the total result as 48.70% .



        Thanks in advance!

  • Anonymous's avatar
    Anonymous
    Not applicable

    hello SUMESHKUMAR22 ,
    please try:

     

    margin average = CALCULATE(AVERAGE(powerbi[Margin]),ALLEXCEPT(powerbi,powerbi[a]))

     

     

    • SUMESHKUMAR22's avatar
      SUMESHKUMAR22
      Helper IV

      Hi Anonymous ,
      This is coming up fine at category level. But in the total average instead of 49.56% it should come up 48.70%. That is dividng the average by distinct table[a] values.

      Thanks you!