Forum Discussion
Statistical Grouping and Averages in Dataset
- Anonymous1 year ago
Hi ryanjparks
Here's the sample data:
Table:
Then add a new measure:
Percent Rank = VAR _vtable = VAR _vtable = SUMMARIZE ( ALLSELECTED ( 'Table' ), 'Table'[Customer Name .], "_SALES", SUM ( 'Table'[Sales .] ) ) RETURN ADDCOLUMNS ( _vtable, "Percent Rank", VAR CurrentSales = [_SALES] VAR TotalRows = COUNTROWS ( _vtable ) VAR _Rank = RANKX ( _vtable, [_SALES],, DESC, DENSE ) VAR _minvalue = MINX ( _vtable, [_SALES] ) RETURN IF ( [_SALES] = _minvalue, 0, DIVIDE ( TotalRows - _Rank, TotalRows - 1 ) ) ) RETURN SUMX ( FILTER ( _vtable, [_SALES] = SUM ( 'Table'[Sales .] ) ), [Percent Rank] )Next, add 3 measures:
Low Volume = VAR _vtable = VAR _vtable = SUMMARIZE ( ALLSELECTED ( 'Table' ), 'Table'[Customer Name .], "_SALES", SUM ( 'Table'[Sales .] ), "_AVG", AVERAGE ( 'Table'[$ / ea .] ) ) RETURN ADDCOLUMNS ( _vtable, "Percent Rank", VAR CurrentSales = [_SALES] VAR TotalRows = COUNTROWS ( _vtable ) VAR _Rank = RANKX ( _vtable, [_SALES],, DESC, DENSE ) VAR _minvalue = MINX ( _vtable, [_SALES] ) RETURN IF ( [_SALES] = _minvalue, 0, DIVIDE ( TotalRows - _Rank, TotalRows - 1 ) ) ) RETURN AVERAGEX ( FILTER ( _vtable, [Percent Rank] >= 0 && [Percent Rank] <= 0.33 ), [_AVG] )Med Volume = VAR _vtable = VAR _vtable = SUMMARIZE ( ALLSELECTED ( 'Table' ), 'Table'[Customer Name .], "_SALES", SUM ( 'Table'[Sales .] ), "_AVG", AVERAGE ( 'Table'[$ / ea .] ) ) RETURN ADDCOLUMNS ( _vtable, "Percent Rank", VAR CurrentSales = [_SALES] VAR TotalRows = COUNTROWS ( _vtable ) VAR _Rank = RANKX ( _vtable, [_SALES],, DESC, DENSE ) VAR _minvalue = MINX ( _vtable, [_SALES] ) RETURN IF ( [_SALES] = _minvalue, 0, DIVIDE ( TotalRows - _Rank, TotalRows - 1 ) ) ) RETURN AVERAGEX ( FILTER ( _vtable, [Percent Rank] >= 0.34 && [Percent Rank] <= 0.66 ), [_AVG] )High Volume = VAR _vtable = VAR _vtable = SUMMARIZE ( ALLSELECTED ( 'Table' ), 'Table'[Customer Name .], "_SALES", SUM ( 'Table'[Sales .] ), "_AVG", AVERAGE ( 'Table'[$ / ea .] ) ) RETURN ADDCOLUMNS ( _vtable, "Percent Rank", VAR CurrentSales = [_SALES] VAR TotalRows = COUNTROWS ( _vtable ) VAR _Rank = RANKX ( _vtable, [_SALES],, DESC, DENSE ) VAR _minvalue = MINX ( _vtable, [_SALES] ) RETURN IF ( [_SALES] = _minvalue, 0, DIVIDE ( TotalRows - _Rank, TotalRows - 1 ) ) ) RETURN AVERAGEX ( FILTER ( _vtable, [Percent Rank] >= 0.67 && [Percent Rank] <= 1 ), [_AVG] )The result is as follow:
Best Regards
Zhengdong Xu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
SNIP
- lbendlin1 year ago
Super User
Please provide sample data that covers your issue or question completely, in a usable format (not as a screenshot).
Do not include sensitive information. Do not include anything that is unrelated to the issue or question.
Need help uploading data? https://community.fabric.microsoft.com/t5/Community-Blog/How-to-provide-sample-data-in-the-Power-BI-Forum/ba-p/963216
Please show the expected outcome based on the sample data you provided.
Want faster answers? https://community.fabric.microsoft.com/t5/Desktop/How-to-Get-Your-Question-Answered-Quickly/m-p/1447523