问题介绍:

记录说明:班级里共有40个人,按最终总平均成绩从高到低划分等级,A等级30%,B等级50%,C等级20%。

部分成绩如下表所示:

按比例划分list python 按比例划分公式_条件判断

Excel中相关函数介绍:

IF函数

IF函数有三个参数,语法如下:

=IF(条件判断, 结果为真返回值, 结果为假返回值)

第一参数是条件判断,比如说“A1=">37”这种,判断TRUE或FALSE。如果判断是TRUE(结果为真)那么IF函数返回值是第二参数,否则(结果为假)返回第三参数。

按比例划分list python 按比例划分公式_数组_02

  • 如果省略了第三参数,则当结果为假时,会返回FALSE。
  • 如果公式中通过第二参数后的逗号给第三参数留了位置,但是没有输入任何值,那么默认是返回0这个数字的。也就是逗号后面不输入参数默认返回值为0。
    如:=IF(1>2,“判断真”,)
  • 第二参数也是一样的规律,如果公式改成:
    =IF(3>2,“判断假”)
    第二参数位于两个逗号之间,没有输入值,则默认返回0。

RANK函数

RANK函数有三个参数,语法如下:

=RANK(Number,Ref)

rank函数,第一个参数Number,表示为需要找到排位的数字,Ref参数为数字列表数组或对数字列表的引用。(默认为降序排列)
如:
RANK(C49,C49:C55)表示找出C49在C49到C55中的排名顺序。

COUNTA函数

COUNTA函数用于统计区域内包含文本和逻辑值的单元格个数。
COUNTA函数语法格式为:

=COUNTA(Ref)

举个例子吧:
=COUNTA(C49:C55)表示得到C49到C55中非空单元格个数。(主要用于计数时使用)

$符号

excel在公式中出现$符号,代表绝对引用或混合引用,=A1表示相对引用,=$A1表示混合引用,=$A$1表示绝对引用。

这里就不进行详细介绍了,如果还是不懂,可以参考:
excel中$符号的用法绝对引用和混合引用

方法流程:

相关函数介绍完之后,下面来看一看将成绩按比例来划分为等级所用到的语句了。话不多说,直接上代码:

=IF(RANK(M5,$M$5:$M$44)/ COUNTA($M$5:$M$44)<= 0.3," A",IF(RANK(M5,$M$5:$M$44)/ COUNTA($M$5:$M$44)<= 0.8," B",IF(RANK(M5,$M$5:$M$44)/ COUNTA($M$5:$M$44)<= 1," C")))

这里进行一下简单介绍:

如果M5排名所占总人数的比例小于等于0.3,则赋值为A;否则如果M5排名所占总人数的比例小于等于0.8(即在0.3与0.8之间),则赋值为B,如果M5排名所占总人数的比例小于等于1(即在0.8与1之间),则赋值为C。

如图:

按比例划分list python 按比例划分公式_数组_03


经过赋值,我们发现,等级这一栏中可以很准确直观的显示这三个等级。