Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
3 years ago
Solved

Calculated percentage value for columns

Hello,

I have simplified the problem here where I want to represent this "Calculated Value" in a visual against the many different "Subjects". I don't want to calculate it in Excel but rather do it automatically in Power BI so as to keep the dashboard interactive.

 

StudentSubject  ASubject  BSubject  X
Student 141.
Student 223.
Student 314.
Student 433.
Student 542.
Student 603.

 

The formula I'm using is calculating the percentage of occurrences of values 4 and 3 out of values 4, 3, and 2.

=(COUNTIF(B2:B7,4) + COUNTIF(B2:B7,3)) * 100 / (COUNTIF(B2:B7,4) + COUNTIF(B2:B7,3) + COUNTIF(B2:B7,2))


I have unpivoted the columns to represent the skills. 


Please suggest how to calculate those values to make another visual that interacts with my existing one.

 

  • negi007's avatar
    negi007
    3 years ago

    Anonymous Yes, you can pivot the data to have one column for  subject 

     

     

    create a measure like below

    Measure_SubA = CALCULATE(COUNT(tab_stud[Subject]),tab_stud[Skill_Level]=4 || tab_stud[Skill_Level]=3)/
    CALCULATE(COUNT(tab_stud[Subject]),tab_stud[Skill_Level]=4 || tab_stud[Skill_Level]=3|| tab_stud[Skill_Level]=2)
     
     

     

    pbix attached as well. 

     

    FYI. if there is something which can be done easily in excel and data size is not too big then it would be advisable to use excel instead of powerbi. PowerBI can be used in situation where data is coming from different sources and some linking needs to be done. Also, cross filtering is one of the key feature of powerbi which can make easy to understand big data.

3 Replies

  • negi007's avatar
    negi007
    Icon for Community Champion rankCommunity Champion

    Anonymous  you can create a measure like below

     

    Measure_SubA = CALCULATE(COUNT(tab_stud[Subject  A]),tab_stud[Subject  A]=4 || tab_stud[Subject  A]=3) /
    CALCULATE(COUNT(tab_stud[Subject  A]),tab_stud[Subject  A]=4 || tab_stud[Subject  A]=3|| tab_stud[Subject  A]=2)
     
    • Anonymous's avatar
      Anonymous
      Not applicable

      The Student Data table is unpivoted now as seen in the image above. Do you want me to duplicate the original table to preserve Subject columns?
      So, do I need to create this measure for each and every subject there is? Excel seems faster here as it already can have the calculated value using a formula. Is there any other benefit of dashboard interaction?

      • negi007's avatar
        negi007
        Icon for Community Champion rankCommunity Champion

        Anonymous Yes, you can pivot the data to have one column for  subject 

         

         

        create a measure like below

        Measure_SubA = CALCULATE(COUNT(tab_stud[Subject]),tab_stud[Skill_Level]=4 || tab_stud[Skill_Level]=3)/
        CALCULATE(COUNT(tab_stud[Subject]),tab_stud[Skill_Level]=4 || tab_stud[Skill_Level]=3|| tab_stud[Skill_Level]=2)
         
         

         

        pbix attached as well. 

         

        FYI. if there is something which can be done easily in excel and data size is not too big then it would be advisable to use excel instead of powerbi. PowerBI can be used in situation where data is coming from different sources and some linking needs to be done. Also, cross filtering is one of the key feature of powerbi which can make easy to understand big data.