龙空技术网

计算排名的类型和方法

查查老师讲office 287

前言:

而今你们对“排序在线计算”都比较重视,各位老铁们都想要分析一些“排序在线计算”的相关资讯。那么小编同时在网上收集了一些对于“排序在线计算””的相关资讯,希望朋友们能喜欢,看官们一起来了解一下吧!

又到年末了,各种排名估计也要开始进行了,什么销售绩效,考试分数等等,当然,虽然我们现在不提倡考试分数的排名,不过大家心里肯定多少还是会有一个比较。那今天就来看看排名的方法和类型 - 中国式排名和国际式排名。

在排名计算方法中,中国人的习惯是,无论有几个并列第2名,之后的排名仍应该是第3名,即并列排名不占用名次。

而国际通行的惯例是{第一名,第二名,第二名,第四名}

那先说简单的,国际式排名,为什么说它最简单呢?是因为直接就可以用Excel中的函数Rank就能轻松实现,并列排名需要占用名次,如下:

关于这个公式就不做过多的解释了,再来看中国式排名,用Rank就不行了,我们可以怎么实现呢?

第一种方法:函数组合

公式:

=SUM((B2<=$B$2:$B$15)/COUNTIF($B$2:$B$15,$B$2:$B$15))

当然这里你把SUM换成SUMPRODUCT也是成立的,中间都应用了数组的方法,而Sumproduct本身就是个数组函数。对这个公式不理解的留言再解释吧。简单的小提示,选中公式中的部分,直接按F9可以看到单步计算结果。如:

先选中B2<=$B$2:$B$15,按下F9;再选中COUNTIF($B$2:$B$15,$B$2:$B$15),再按下F9就可以达到上面的效果,自己再分析一下。

第二种方法:数据透视表的值显示方式

选中数据源,插入数据透视表,然后将字段Name拖入到行中,Score拖入到值中,如:

在求和项:Score区域点击鼠标右键,弹出菜单中选择值显示方式下的降序排列,如:

弹出对话框中保持基本字段默认,直接点击确定:

结果如下:

第三种方法:Power Query (难度较高)

对Power Query感兴趣的小伙伴和想提升Excel技能的可以尝试一下,为什么说难度较高呢,因为它不能通过简单的界面操作完成,而是要深入学习一些M函数才能实现。

最终函数是:

= Table.AddColumn(更改的类型, "中国式排名", each Table.RowCount(Table.Distinct(Table.SelectRows(源,(x)=>x[Score]>[Score]),"Score"))+1)

所以在用PQ之前,必须先理解一下:

Table.RowCount

Table.Distinct

Table.SelectRows

(x)=>x

分别是什么意思?

当然,PQ也可以通过这个函数来实现国际式排名,毕竟在PQ中没有RANK函数。

最近在录制Power Query的课程,从基础到进阶,希望一系列的教程可以帮助你有所提升,毕竟界面的操作只能发挥全部能力的20%,另外80%的能力都要通过M函数来实现。如果你愿意继续学习,那么可以点击下方直达课程链接,后续会有相关介绍。

标签: #排序在线计算 #算法的名次解释 #排名的算法