Power BI Power Query 排名2-分组排名

前一篇关于排名的博文Power BI Power Query 排名1-非连续排名和连续排名中,我们是基于整个表对分数进行排名,假若有如下形式的数据,我们需要最终的名次是按照分组来归类排名的,这种排名应该如何实现了?

image

分组排名非连续排名思路

1、从表中筛选出分数大于当前分数,且分组等于当前分组的行

2、统计筛选出来的总行数,将其+1即为排名

分组排名连续排名思路

1、从表中筛选出分数大于当前分数,且分组等于当前分组的行

2、挑选出第1步得到的表中的分数列,形成新表(想一想为什么不需要分组列?)

3、从第2步的表中求非重复,得到非重复的记录表

扫描二维码关注公众号,回复: 7076264 查看本文章

2、统计第3步得到的非重复记录表的总行数,将其+1即为排名

分组排名非连续排名实现

大致的操作基本上和上一篇博文一样,我主要是给出各个步骤中的公式和运算结果图

=Table.SelectRows(更改的类型,(r)=>(r[分组]=[分组] and r[分数]>[分数]))

image

=Table.RowCount(Table.SelectRows(更改的类型,(r)=>(r[分组]=[分组] and r[分数]>[分数])))+1

image

分组排名连续排名实现

=Table.SelectColumns(Table.SelectRows(更改的类型,(r)=>(r[分组]=[分组] and r[分数]>[分数])),"分数")

image

=Table.Distinct(Table.SelectColumns(Table.SelectRows(更改的类型,(r)=>(r[分组]=[分组] and r[分数]>[分数])),"分数"))

image

=Table.RowCount(Table.Distinct(Table.SelectColumns(Table.SelectRows(更改的类型,(r)=>(r[分组]=[分组] and r[分数]>[分数])),"分数")))+1

image

猜你喜欢

转载自www.cnblogs.com/alexywt/p/11394226.html