当前位置:首页 > 微软office > Excel > 正文内容

频率计算,FREQUENCY函数会用吗?

zyhwxm3年前 (2022-07-04)Excel67
小伙伴们好啊,今天咱们分享FREQUENCY函数的用法。
这个函数是干嘛用的呢?
FREQUENCY函数计算数值在指定区间内的出现频数,然后返回一个垂直数组。
这个函数有两个参数,常规用法是这样的:
FREQUENCY(一组数值,指定的间隔值)
FREQUENCY函数将第一参数中的数值以第二参数指定的间隔进行分组,计算数值在各个区间内出现的频数。最终返回的数组中的元素会比间隔值的元素多一个,多出来的这个表示最高区间之上的数值个数。
咱们来举个例子:
如下图所示,要根据D列的条件,统计各个年龄段的人数。
首先在E列输入间隔20、30、40
然后同时选中F3:F6,编辑栏中输入以下公式,按<Ctrl+Shift+Enter>组合键结束编辑。
=FREQUENCY(B2:B13,E3:E5)
注意,由于FREQUENCY函数返回的是数组结果,因此在直接使用该函数时需要按<Ctrl+Shift+Enter>组合键结束编辑才能正常运算。
第二参数设置了3个间隔,结果返回了4个数字,最后这个数字,就是比最高的间隔值还要大一些的有多少。

接下来咱们再看看这个函数的其他典型用法:
1、计算连续签到最多有几天
如下图所示,要统计每一行中连续签到最多的天数。
I2单元格输入以下公式,按<Ctrl+Shift+Enter>组合键结束编辑。
=MAX(FREQUENCY(IF(B2:H2>0,COLUMN(B:H)),IF(B2:H2=0,COLUMN(B:H))))
这个公式看起来好复杂啊,其实掌握一下套路就简单了。
简单说下公式的计算过程:
FREQUENCY函数的第1参数是下面这段内容:
IF(B2:H2>0,COLUMN(B:H))
如果B2:H2大于0,就返回对应的列号,否则返回逻辑值FALSE,结果是这样的:
{FALSE,3,4,5,FALSE,7,8}
再来看FREQUENCY函数的第2参数:
IF(B2:H2=0,COLUMN(B:H))
如果B2:H2等于0,就返回对应的列号,否则返回逻辑值FALSE,结果是这样的:
{2,FALSE,FALSE,FALSE,6,FALSE,FALSE}
这两个参数是如何来计算的呢?
FREQUENCY函数能够忽略数组中的逻辑值,以未签到对应的列号{2;6}为指定间隔值,统计签到对应的列号{3;4;5;7;8}在各个分段中的数量,相当于分别统计在两个未签到列号之间有多少个签到的列号,返回内存数组结果为:
{0;3;2}
也就是小于等于2的有0个,小于等于6的有3个,大于6的有2个。
最后使用MAX函数从内存该数组中提取出最大值,OK了。
如果你觉得这个公式计算过程不容易理解,可以先记住按条件统计频率的模式化用法:
FREQUENCY(IF(符合条件,相应列号),IF(不符合统计,相应列号))

2、计算不重复下的第n个最大值
FREQUENCY函数还有一个特点,如果指定间隔中的数值有重复,会仅统计第一次出现时的间隔,后面重复出现的间隔值,计算结果会显示为0。
并且第二参数不要求排序处理,函数会自动将各个间隔值按从小到大排序后计算对应的间隔数量,再将结果按原有顺序分配到各个单元格。
利用这个特点,能够计算不重复的第n个最大(最小)值。
如下图所示,B列的考核有很多个重复分数,希望从中提取出不重复的第3个最高分。
公式为:
=LARGE(IF(FREQUENCY(B2:B10,B2:B10),B2:B10),3)
本例公式中,FREQUENCY的第1参数和第2参数相同,表示分别按B2:B10中的各个数值来对这个区域的数值进行分组统计,结果为:
{4;0;0;0;1;1;1;1;1;0}
也就是99及以上的有4个,97~99以下的有1个,95~97以下的有1个,85~95以下的有1个……
然后使用IF函数进行判断,如果FREQUENCY的计算结果大于0,就返回B2:B10单元格区域中对应的数值,否则返回逻辑值FALSE。得到内存数组结果为:
{99;FALSE;FALSE;FALSE;97;95;65;85;70;FALSE}
最后使用LARGE函数,忽略逻辑值从内存数组中提取出第三个最大值。
好了,今天的内容就是这些,练手文件在此:
https://pan.baidu.com/s/1o4Ac8uK0GQsNcYR5aZ48wg
提取码: z4sg

图文制作:祝洪忠

本篇文章来源于微信公众号:Excel之家ExcelHome


版权声明:本文版权归原作者所有,仅供技术参考;

                 若有违反您个人权益,请留言反馈删除相关信息;


本文链接:http://zyh-c.myds.me:8086/post/231.html

相关文章

手把手教你,学会提取不重复值

手把手教你,学会提取不重复值

一维区域筛选不重复记录示例26-7    提取客户代表姓名图26-8展示的是某单位销售记录表的部分内 容,需要提取不重复的客户代表姓名。1. MATCH函数去重法在F2单元格中输入以下数组公式,按<Ctrl+Shi...

八个公式真简单,月薪少说三千三

八个公式真简单,月薪少说三千三

小伙伴们好啊,今天和大家分享一组常用的函数套路,小伙伴们遇到类似问题可以直接拿来套用即可。1、IF函数用来完成非此即彼的判断。如下图,要判断成绩是否合格。公式:=IF(C2>=60,"及格","不及格")用法...

TEXT函数,这些用法请收好

TEXT函数,这些用法请收好

TEXT函数是使用频率非常高的文本函数之一,她只有两个参数,参数1是要处理的数字,参数2用于指定格式代码,与单元格数字格式中的大部分代码都基本相同。接下来咱们一起看看TEXT函数的常见用法:1、简单的条件判断下图展...

学会这些小技巧,加班照样少不了

学会这些小技巧,加班照样少不了

小伙伴们好啊,今天老祝为大家准备了一组简单实用的小技巧,虽然简单,却能解决很多实际问题,咱们一样一样的看:1、用分列计算文本算式就像下图中,B列的文本算式如何计算出正确的结果呢?其实很简单,先依次单击【文件】【 选...

21个常用日期函数组合

21个常用日期函数组合

今天整理了21个最常用的日期函数组合,分享给大家~1、=TODAY()计算当前的系统日期2、=NOW()计算当前系统日期和时间,设置单元格格式为yyyy/m/d h:mm3、= NOW()-TODAY()计算当前是几点几分。设置单元格格式为...

Excel制作带进度条的日程安排表!

Excel制作带进度条的日程安排表!

今天,教大家制作一份好看的日程安排表,一起来看看吧!1准备工作表格中添加一些内容。然后改成这样。2开始制作01.首先,点开「开发工具」-「插入」-「复选框(窗体控件)」,在每行「状态」中插入,然后删其中的文字内容。...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。