logo
目录

    excel做频次分析用哪个函数最好,1篇文章告诉你!——九数云BI | 帆软九数云

    九数云BI小编 | 发表于:2024-09-25 21:09:41

    excel作为我们日常生活中最常用的数据分析软件,有着许多强大的功能却并没有被人们所充分利用,今天咱们分享excel做频次分析的函数——FREQUENCY。

    它的作用是计算数值在指定区间内的出现频数,然后返回一个垂直数组。常规写法是这样的:

    FREQUENCY(一组数值,指定的间隔值)

    FREQUENCY函数将第一参数中的数值以第二参数指定的间隔进行分组,计算数值在各个区间内出现的频数。最终返回的数组中的元素会比间隔值的元素多一个,多出来的这个表示最高区间之上的数值个数。

    咱们来举个例子:

    如下图所示,要根据D列的条件,统计各个年龄段的人数。

    excel做频次分析用哪个函数最好,1篇文章告诉你!——九数云BI插图

    首先在E列输入间隔20、30、40

    然后同时选中F3:F6,编辑栏中输入以下公式,按<Ctrl+Shift+Enter>组合键结束编辑。

    =FREQUENCY(B2:B13,E3:E5)

    excel做频次分析用哪个函数最好,1篇文章告诉你!——九数云BI插图1

    注意,由于FREQUENCY函数返回的是数组结果,因此在直接使用该函数时需要按<Ctrl+Shift+Enter>组合键结束编辑才能正常运算。

    第二参数设置了3个间隔,结果返回了4个数字,最后这个数字,就是比最高的间隔值还要大一些的有多少。

    接下来再看看这个函数的其他典型用法:

    1、excel做频次分析:计算连续签到最多有几天

    如下图所示,要统计每一行中连续签到最多的天数。

    I2单元格输入以下公式,按<Ctrl+Shift+Enter>组合键结束编辑。

    =MAX(FREQUENCY(IF(B2:H2>0,COLUMN(B:H)),IF(B2:H2=0,COLUMN(B:H))))

    excel做频次分析用哪个函数最好,1篇文章告诉你!——九数云BI插图2

    这个公式看起来好复杂啊,其实掌握一下套路就简单了。

    简单说下公式的计算过程:

    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、excel做频次分析:计算不重复下的第n个最大值

    FREQUENCY函数还有一个特点,如果指定间隔中的数值有重复,会仅统计第一次出现时的间隔,后面重复出现的间隔值,计算结果会显示为0。

    并且第二参数不要求排序处理,函数会自动将各个间隔值按从小到大排序后计算对应的间隔数量,再将结果按原有顺序分配到各个单元格。

    利用这个特点,能够计算不重复的第n个最大(最小)值。

    如下图所示,B列的考核有很多个重复分数,希望从中提取出不重复的第3个最高分。

    公式为:

    =LARGE(IF(FREQUENCY(B2:B10,B2:B10),B2:B10),3)

    excel做频次分析用哪个函数最好,1篇文章告诉你!——九数云BI插图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函数,忽略逻辑值从内存数组中提取出第三个最大值。

    当然,如果你还想要尝试其他更简单的方法进行数据分析,推荐使用九数云BI,它是帆软软件倾力打造的一款SAAS BI产品,是一款在线BI、报表和数据分析工具,能帮助各行各业的人员快速地进行百万级别以上的数据分析,并搭建各类报表系统;支持提供数据分析、故事报告等众多数据分析功能,0代码,小白也可快速上手!

    热门产品推荐

    九数云BI是一个人人都可轻松上手的零代码工具,您可以使用它完成各类超大数据量、超复杂数据指标的计算,也可以在5分钟内创建富有洞察力的数据看板。企业无需IT、无需大量资源投入,就能像搭积木一样搭建企业级数据看板,全盘核心指标综合呈现,用数据驱动商业决策。
    相关内容 查看更多

    随时随地在线分析

    现在注册,即可领取15天高级版免费使用,体验数据扩容、自动化数据预警、 每日定时更新等20+项强大功能
    立即使用