Forum Discussion
Anonymous
8 years agoNot applicable
Calculating Percentage using Groupby
I need to make a table with the percentage of compliance per person. Percentage of compliance is equivalent to the number of YES over the number of rows related to a particular person. How am I suppo...
- 8 years ago
Anonymous
If you directly want a calculated table as an OUTPUT,,, then goto Modelling Tab>>New Table and use this formula
Table = SUMMARIZE ( TableName, TableName[Person], "%age of compliance", VAR totalCountforaperson = CALCULATE ( COUNT ( TableName[Person] ), ALLEXCEPT ( TableName, TableName[Person] ) ) VAR CountwithYes = CALCULATE ( COUNT ( TableName[Person] ), FILTER ( ALLEXCEPT ( TableName, TableName[Person] ), TableName[Compliance] = "Yes" ) ) RETURN DIVIDE ( CountwithYes, totalCountforaperson ) ) - 8 years ago
Hi Anonymous
The below calculated table will gget you pretty close
New Table = ADDCOLUMNS( SUMMARIZECOLUMNS( 'Table1'[Person], "Rows Total",COUNTROWS('Table1') , "Compliant",COUNTROWS(Filter('Table1','Table1'[Compliance]="Yes"))+0 ), "Ratio" , DIVIDE([Compliant],[Rows Total]) )
Phil_Seamark
8 years agoMicrosoft Employee
HI Anonymous,
The +0 just converts a blank cell to a 0 in this case. Take it out and see. :)
Anonymous
8 years agoNot applicable
Hi Phil_Seamark, this really works well! I'm actually a beginner in DAX and this technique is really helpful for me specially for future use. Thanks! :smileyhappy: