Power BI Power Query 排名2-分组排名
前一篇关于排名的博文Power BI Power Query 排名1-非连续排名和连续排名中,我们是基于整个表对分数进行排名,假若有如下形式的数据,我们需要最终的名次是按照分组来归类排名的,这种排名应该如何实现了?
分组排名非连续排名思路
1、从表中筛选出分数大于当前分数,且分组等于当前分组的行
2、统计筛选出来的总行数,将其+1即为排名
分组排名连续排名思路
1、从表中筛选出分数大于当前分数,且分组等于当前分组的行
2、挑选出第1步得到的表中的分数列,形成新表(想一想为什么不需要分组列?)
3、从第2步的表中求非重复,得到非重复的记录表
2、统计第3步得到的非重复记录表的总行数,将其+1即为排名
分组排名非连续排名实现
大致的操作基本上和上一篇博文一样,我主要是给出各个步骤中的公式和运算结果图
=Table.SelectRows(更改的类型,(r)=>(r[分组]=[分组] and r[分数]>[分数]))
=Table.RowCount(Table.SelectRows(更改的类型,(r)=>(r[分组]=[分组] and r[分数]>[分数])))+1
分组排名连续排名实现
=Table.SelectColumns(Table.SelectRows(更改的类型,(r)=>(r[分组]=[分组] and r[分数]>[分数])),"分数")
=Table.Distinct(Table.SelectColumns(Table.SelectRows(更改的类型,(r)=>(r[分组]=[分组] and r[分数]>[分数])),"分数"))
=Table.RowCount(Table.Distinct(Table.SelectColumns(Table.SelectRows(更改的类型,(r)=>(r[分组]=[分组] and r[分数]>[分数])),"分数")))+1