RANK函数

RANK函数

求排名的函数
rank函数是排名函数。rank函数最常用的是求某一个数值在某一区域内的排名。[1]rank函数语法形式:rank(number,ref,[order])函数名后面的参数中number为需要求排名的那个数值或者单元格名称(单元格内必须为数字),ref为排名的参照数值区域,order的为0和1,默认不用输入,得到的就是从大到小的排名,若是想求倒数第几,order的值请使用1。
    中文名:rank函数 外文名: 别名: 语法:rank(number,ref,[order]) 所属:排名函数 参数:partition_by_clause

基本简介

返回结果集分区内指定字段的值的排名,指定字段的值的排名是相关行之前的排名加一。

参数信息

partition_by_clause将from子句生成的结果集划分为应用到RANK函数的分区。

Order_by_clause确定将RANK值应用到分区中的行时所使用的顺序。

SQL示例

以下用一个成绩表作示例

table架构

s_score(s_class(班级),s_id(学号),s_score(分数))

SQLstatement1:

Selectrank()over(orderbys_scoredesc)as名次,s_class,s_id,s_scorefroms_score

结果集如下

名次s_classs_ids_score

1二班S20090733100

2一班S2009063599

3三班S2009091997

4一班S2009084696

5一班S2009082595

6二班S2009071594

7三班S2009083691

8二班S2009063186

SQLstatement2:

Selectrank()over(partitionbys_classorderbys_scoredesc)as名次,s_class,s_id,s_scorefroms_score

结果集如下

名次s_classs_ids_score

1三班S2009091997

2三班S2009083691

1二班S20090733100

2二班S2009071594

3二班S2009063186

1一班S2009063599

2一班S2009084696

3一班S2009082595

EXCEL示例

再举列一个比较简单的,这样子更容易看明白:

假如A列从A1单元格起,依次有数据80、98、65、79、65。

在B1中编辑公式

=RANK(A1,$A$1:$A$5,0)

回车确认后,向下复制公式到B5单元格。

效果:

从B1单元格起依次返回值为2、1、4、3、4。

注意:

公式中的参数0(零)或省略,Excel对数字的排位是把数据从大到小的降序排列,也就是说数值最大的排名第1。

再试试看:

在C1中编辑公式

=RANK(A1,$A$1:$A$5,1)

回车确认后,向下复制公式到B5单元格。

此时从C1单元格起依次返回的值是4、5、1、3、1。

也就是说,此时A列中数据是按从小到大排列名次的,最小的数值排位第1,最大的数值排位最末

【如何使用RANK平均的等级值为限制的观察值】

将数字数据转换为秩时,可能要用于表示扎以便限制的观察每个接收的平均等级上的最小可能的秩而不是所有此类的观察值。在这篇文章中数值的示例阐释这一点。

虽然当前版本的RANK返回相应的结果对于大多数情况下,本文讨论了一个领带发生这种情况。例如对于您可能需要处理扎,如果您正在使用非参数化的统计假设测试涉及秩的RANK。

ExcelRANK帮助

本文介绍的方法,还会介绍MicrosoftOfficeExcel2003和更高版本的ExcelRANK帮助文件中(但不是在更早版本的RANK帮助文件中)。此过程同样适用于所有版本的Excel。RANK函数本身不变。

语法

RANK(number,ref,order)

注意Number必须有一个数字值;ref必须是一个数组或单元格区域包含数字数据值;是可选的order。如果省略order,或者将它分配一个值为0(零)number排位是数字的数字的在ref中number位置,如果ref数字的数字的按降序顺序排序。如果order分配任何非零值,假定ref为排名按升序排序。

用法的示例

为了说明这种用法的RANK,创建一个空白Excel工作表、复制下表,选中您空白Excel工作表中的单元格A1,然后在编辑菜单上单击粘贴,以便在下表中的项将填充工作表中的单元格A1:F12。

注意在MicrosoftOfficeExcel2007年粘贴命令是在开始选项卡上的剪贴板组中。

注意您将此表粘贴到新的Excel工作表后,单击粘贴选项按钮,然后单击匹配目标格式。

在Excel2003年的粘贴区域仍处于选中状态的情况下使用指向格式菜单上的列,然后单击列宽。

在Excel2007年的粘贴区域仍处于选定状态在开始选项卡上的单元格组中单击格式,然后单击自动调整列宽。

某些用于您可能希望使用考虑重复的级别的定义。这样做将以下的修正因素添加到返回的RANK值中。该修正因素是合适的降序计算排位的位置(order=0或省略)或按升序顺序(order=非零值)。(COUNT(ref)+1–RANK(number,ref,0)–RANK(number,ref,1))/2.

在工作表说明了此级别的定义。数据是单元格A1:A12。在单元格B1:B12是按升序返回的RANK的秩。中的单元格A2:A5观察常见值为21与相关联。这将产生常见排位为2。没有一个较低排名观察,10。这些四个值的21占用的排名位置2、3、4和5并且有一个平均排位(2+3+4+5)/4=3.5。同样,两个的观察值中的单元格A6:A7每33,有与低级别的五个观察值。因此,这些两个观察值占用的排名位置6和7,并且有一个平均排位(6+7)/2=6.5。最后,三个的观察值的单元格A8:A10中有一个公共值52。没有与低级别的七个观察值。因此,这些三个观察值占用8、9和10的排名位置和具有的(8+9+10)的平均秩/3=9。

在C列中的项包含修正系数为限制的秩,并显示这些平均秩扎考虑在内。在列B和C列中的值是完全相同的观察不与其他的观察说明如行1、11,和12依赖。

单元格E1:E12包含按降序顺序返回的RANK的秩。有两个条目具有较低的秩,比单元格A8:A10中的三个条目。单元格A8:A10具有一个公共值54。因此,这些三个项占用的排名位置3、4和5,并且有一个平均排位(3+4+5)/3=4。有两个条目中的单元格A6:A7比的低级别的五个条目。单元格A6:A7具有一个公共值33。因此,这些两个项占用排名位置6和7,并有一个平均排位(6+7)/2=6.5。有七个条目具有较低的秩,比单元格A2:A5中的四个条目。单元格A2:A5具有一个公共值21。因此,这些四个项占用排名的位置,8、9、10、11和平均值(8+9+10+11)的/4=9.5。

在F列中的项包含修正系数为限制的秩和显示这些平均秩扎考虑在内。列E和F列中的值是完全相同的观察不与其他的观察说明如行1、11,和12依赖。

结论

本文介绍并说明了可用于限制秩排名数据时考虑了修正因素。您可以使用与RANK函数一起修正因素。修正因素效果同样不错秩何时按升序或降序排序。

相关词条

相关搜索

其它词条