excel 利用用Sumproduct函数实现中国式排名
发布时间:2023-08-11 23:54:17
什么是“中国式排名”
什么是“中国式排名”,与国际通用排名方式有什么区别?以下面两张图为例说明,其中E列是成绩总分,F列和G列都是按照学生成绩从高到低进行的排名,我们可以看到第7行和第8行,有两个学生的总分是一样的,排名当然也该一样,但是对于有并列名次后面的同学,F列和G列,就有区别。
中国式排名-图1
以F列为例,1,2,3,4,5,6,6,8,9,10,其中重点在两个并列第6名后面,跳过了第7名,接着的是第8名,这种方法,是国际上通用的排名方式,即使在奥运会上也是如此,假如有两个并列第1名,就发2枚金牌+1枚铜牌,而不会颁发银牌(没有第2名,两个第1名后面就是第3名);假如是两个并列第2名,就颁发1枚金牌+2枚银牌(1个第1名,两个第2名,后面就是第4名,没有第3名),就没有了铜牌。
而G列中是我们中国的排名方式,就是1,2,3,4,5,6,6,7,8,9,也就是说,按照我们中国人的习惯,排名只占名额不占名次,这个就是区别。
像国际通用的这种排名方式,Excel系统已经内置了函数Rank.EQ(Rank.Avg),直接使用,就可以了,而对于中国式排名,我们就需要自己采用函数嵌套的方法来处理;当然使用函数来进行中国式排名的方法很多,我们这里讲,使用Sumproduct函数来如何排名。
基本思想:
如果按照总分的高低来排序,比如我们想排罗伟同学的名次,先可以让罗伟同学对应的名次为1,然后用罗伟同学的总分和成绩表中的每一位同学的总分进行一 一比较,如果发现某位同学总分大于罗伟同学总分,那么罗伟同学的名次就应该下降一位,即就在罗伟同学对应名次上面+1,当整个成绩表比较完成后,+1的数量罗伟同学的名次,但是我们这样找觉得比较麻烦,所以想个办法,先把区域中把某一分数出现的次数标记出来,最后来统一比较统一相加,比如说只有一个271,就在271后面标记为1,有两个247,后面就标记为2。要实现这个功能,我们可以使用Countif函数,进行条件计数来处理(注意此时函数的两个参数是一样的,两个都是成绩这一列),见示例(表格使用了格式化引用,所以公式中没有显示行列号,而是显示的的名称):
中国式排名-例1
注意到第7行和第8行,两个总分一致,所以函数的结果都是2,而其他的行,成绩只出现了一次,所以都是1。
在统计完成分数出现的以后,我们就可以采用条件判断,比如罗伟同学,有3名同学总分比他高,他就相当于第4名,那么计算的他的名次就应该是3个1相加,然后再加上他自己本身占的名次1,所以就得到4。这样的方法,在没有遇到有并列名次前,结果都是OK的,但是在遇到了前面有并列名次的时候,就不一样了,比如说要排名杨志勇同学,他前面有7名同学比他分数高,按照国际通用惯例,他就应该是第8名,但是,我们中国排名方式,相同名次,只占名额不占名次,他就是第7名。如果我们还是按照刚才的方法相加,得到的结果就是1+1+1+1+1+1+2+2=10,相当于多加了3,原因就是出在前面相同名次里面的,记数为2,本来只占1个名次的,但这加起来,就相当于有占了4个名次。这个时候我们就需要调整下,可以这样考虑,如果所有计数都取倒数,那么1的倒数就是1,2的倒数就是1/2,两个1/2相加,他们还是1,还是只占据1个名次。同样的道理,如果有3个并列名次,他们计数3,取倒数1/3,在进行相加的时候,3个1/3的和,也是1,也就是说,不论多少个相同的排名,他们都只占1个名次。有了这个思想以后,我们就可以使用sumproduct来进行条件判断,如果满足条件的,就把相应位置上的值求和,达到我们中国式排名的目的,见示例:
说明
=SUMPRODUCT(([总分]>=[@总分])*1,1/[Countif])
其中第一个参数是对比总分里面,比当前行的总分高的行,如果等于或者是高于当前行的总分,则返回TRUE,否则就返回FALSE(返回结果要*1,将逻辑值转换成数字,否则sumproduct函数会讲逻辑值当成0来处理),第二个参数是返回计数项的倒数,也就是1/1,……,1/2,1/2,……然后把使用Sumproduct函数,把对应位置上的数相乘再相加,就得到我们的中国式排名,另外同学也可以讲countif嵌套进第二个参数,这样的话,函数就更加紧凑。


猜你喜欢
- 咪咕视频是一款高品质视频播放软件,用户在使用过程中可以注册一个个人账号登录,这样就能实现手机、PC等多端数据实时同步,更方便查找自己看视频的
- 进入需要设置动画的第二张WPS演示文稿编辑窗口,通过组合键CTRL+鼠标左键单击依次选中需要设置动画的对象,注意单击选中的顺序就将是动画出现
- 每次打开一个新应用,就会当的一声跳出一个提示框,显示你已安装了可以打开此类文件的新应用,怎么样禁止这个烦人的提示框呢,下面以图文的形式为大家
- lightroom预设怎么导入?Lightroom可以调整的参数非常多,自定义性强,所以在数字照片领域非常流行,是强大的摄影后期修理工具。那
- 如果在Excel 2010 的快速访问工具栏中添加了过多的命令按钮,可以通过重置命令来恢复默认的快速访问工具栏。方法如下: &nb
- wps的打印预览在哪?页面左上角几个常用功能按钮中的第四个(按钮是一张正方形的纸,中间有一个放大镜)工具按钮位于文档标签的左侧。点击“WPS
- 打开电脑不再看到正常的桌面、任务栏以及系统托盘和侧边栏等,相反只剩下一个黑色的屏幕和一个资源管理器窗口,通过下载并运行Black Scree
- 不同用户有着不同的需求,即使一些需求很小众但也能实现,若希望隐藏本地磁盘驱动器号,该怎么办呢?下面的方法或许对对大家有所帮助在使用Win8系
- 相信很多用户在设置Nvidia控制面板的时候都非常纠结是要选择性能还是质量,其实设置没有绝对的哪种方式好,都是要需要根据实际芯片的性能、应用
- 某Win7系统用户发现自己桌面上的图标出现问题了,想拖动它挪个地方,但是一点击(选择)图标相应的程序就变成打开应用程序了,平时都是双击打开的
- 这不是Windows系统的一部分,而是360公司发布的游戏保险箱程序的组成部分是否看到任务管理器中有SafeboxTray.exe进程在运行
- Excel中具体该如何精确查找呢?下面是小编带来的关于excel中精确查找的方法,希望阅读过后对你有所启发!excel中精确查找的方法:精确
- MyDockFinder是一款仿Macos美化的软件,MyDockFinder能够帮助用户将桌面变为类似MAC桌面的摆设,不过有小伙伴在使用
- 第一部分:DCOUNT函数的用法介绍Excel软件中DCOUNT函
- 这篇文章主要介绍了Win8中创建一个快速关机快捷方式图文教程,需要的朋友可以参考下 如果你习惯了Win
- 不少使用win7系统的朋友,在安装autoCAD2006时,都有遇到过无法正常安装的情况。那么,win7无法正常安装autoCAD2006要
- 最近有Win10用户发现了一个名为rthdcpl.exe的进程,想要将其禁止却又害怕电脑出现问题。那么rthdcpl.exe进程是什么呢?r
- 现在的工作特别是会计统计类的工作,表格的运用是越来越广泛的,很多人刚开始的时候少数要算乘积的话,就是最笨的办法就是用计算器一个一个算的,其实
- 详细制作过程如下:WPS表格数据如何转换呢?这些表格通常都与图 1所示的表格相似,但人事管理员希望将此类表格内容添加到数据库中往往是一件非常
- SteerMouse for mac是一款应用于mac os平台上的万能鼠标设置工具,不论你的鼠标是蓝牙鼠标还是常用的USB鼠标你都可以轻松