在Excel中使用FREQUENCY函数统计各分数段人数

在Excel中使用FREQUENCY函数统计各分数段人数

 用Excel怎样统计出学生成绩各分数段内的人数分布呢?很多文章都推荐使用CountIF函数,可是每统计一个分数段都要写一条函数,十分麻烦。例如,要在C58:C62内统计显示C2:C56内小于60分、60至70之间、70至80之间、80至90之间、90至100之间的分数段内人数分布情况,要输入以下5条公式:

<script src="http://www.pconline.com.cn/script/ad_text_pcedu.js" id="ad_text_pcedu" defer></script>  1. 在C58内输入公式统计少于60分的人数:=CountIF(C2:C56,"<60")

  2. 在C59内输入公式统计90分至100之间的人数:=CountIF(C2:C56,">=90")

  3. 在C60内输入公式统计80至90之间的人数:=CountIF(C2:C56,">=80")-CountIF(C2:C56,">=90"),

  4. 在C61内输入公式统计70到80之间的人数:=CountIF(C2:C56,">=70")-CountIF(C2:C56,">=80"),

  5. 在C62内输入公式统计60到70之间的人数:=CountIF(C2:C56,">=60")-CountIF(C2:C56,">=70")。

  如果要把0至10之间、10至20之间、20至30……90至100之间这么多个分数段都统计出来,就要写上十条公式了。可见用COUNTIF()函数效率并不高。

其实,Excel已经为我们提供了一个进行频度分析的FreQuency数组函数,它能让我们用一条数组公式就轻松地统计出各分数段的人数分布。

FREQUENCY函数说明如下:
--------------------------------------------------
语法:
FREQUENCY(data_array,bins_array)

参数:
data_array:需要进行频率统计的一组数。
bins_array:为间隔的数组,该间隔用于对data_array中的数值进行分组。

返回值:
以一列垂直数组返回某个区域中数据的频率分布。例如,使用函数 FREQUENCY 可以计算在给定的分数范围内测验分数的个数。

注:
1、返回的数组中的元素个数比 bins_array(数组)中的元素个数多 1。所多出来的元素表示超出最高间隔的数值个数。
2、由于返回结果为数组,必须以数组公式的形式输入。即给定FREQUENCY的参数后,必须按Ctrl+Shift+Enter完成,而不能直接按确定。
--------------------------------------------------

一个统计成绩分布的例子:


 

步骤:
1、输入学生成绩。(如图中的"成绩")

2、根据自己需要输入间隔值(即图中的"分段点"),该间隔值用于对成绩进行分段。

3、选择一个区域,该区域的单元格的个数=分段点个数+1。如图中,选择D2:D9单元格。

4、点击工具栏上fx(插入函数)以插入函数。在弹出的窗口中的搜索函数输入框中输入FREQUENCY,点击转到。在"选择函数"中选择找到的FREQUENCY函数,点确定。



 

5、在弹出的参数输入窗口中输入参数。在data_array中输入成绩所在单元格A2:A25,在bins_array中输入分段点所在单元格B2:B8,然后按Ctrl+Shift+Enter( 不要点确定)确定后公式两端出现一对大括号({}),此大括号不能直接输入。 频率统计结果显示在D2:D9单元格中。


你可能感兴趣的:(Excel)