连续数统计就用Frequency
作者:小窝来源:部落窝教育发布时间:2023-11-15 23:13:14点击:1010
介绍用Frequency函数统计数据连续出现次数、某状态连续出现次数、最大连续数的个数的方法。
知乎上有一个问题,如何统计如下图所示某数的重复次数:
热心网友们给出了各种各样的方法:IF+LOOKUP公式法、有R语言法、有找AI帮忙法、有VBA法、有Frequency法、有LET+LAMBDA法等等。
以上方法是否正确、好用,小窝不评价。在此只说连续数怎么统计。连续数的统计常见的有如下3种,上面只是其中第一种:
第一种:统计确定的某个数连续出现的次数
第二种:统计某种状态连续出现的次数
第三种:统计数列中最大连续数个数
这三种连续数统计都可以用Frequency函数解决。
1.统计某数据连续出现的次数
统计某个数字或者某个文本连续出现的次数。例举两例。
(1)统计“是”字的连续出现次数
公式=FREQUENCY(IF(A2:A13<>"",ROW(2:13)),IF(A2:A13="",ROW(2:13)))
说明:
Frequency只有两个参数,统计数据出现在分段上的个数。第一个参数是统计区域,第二参数是分段数。分段数可以是区域也可以是常量数组。
①IF(A2:A13<>"",ROW(2:13)),为每个“是”编号,得到一组数{2,4,5,6,7,9,10,11,12,13}
②IF(A2:A13="",ROW(2:13)),为每个空格编号,得到一组数{3,8},作为分段数。形成了3个分段:<=3、>3且<=8、>8。
③=FREQUENCY(①,②),统计①中数据落在②中各分段里的个数。此处,<=3的有1个,>3且<=8的有4个,>8的有5个。
如果统计最大连续出现次数,外套一个MAX函数即可:
公式可以简化=MAX(FREQUENCY(ROW(A2:A14),IF(A2:A14="",ROW(A2:A14)))-1)。不理解的可点此。
(2)统计最大连胜场数
足球比赛,胜2分,平1分,输0分。统计最大连胜场数就是统计分数“2”连续出现的最大次数。
=MAX(FREQUENCY(IF(B18:H18=2,COLUMN(B:H)),IF(B18:H18<>2,COLUMN(B:H))))
2.统计某种状态连续出现的次数
不是直接统计某个数而是某类数所代表的状态连续出现的次数。例举两例。
(1)统计最大连续迟到次数
表中的数据是每次迟到的时长而非“迟到”两字。时长大于0的就是迟到。
(2)统计是否断码补货
表中是不同尺码的存货量。如果连续四个码都有存货,则不需要补货,反之则认为断码需要补货。
=IF(MAX(FREQUENCY(IF(B38:H38<>"",COLUMN(B:H)),IF(B38:H38="",COLUMN(B:H))))<4,"要补货","")
3.统计数列中最大连续数的个数
如果数列符合某个标准,如等差,则认为其数据是连续的。譬如1、2、3、4、5是连续数;1、3、6、2不是连续数。
现在统计一列数中最大连续数的数据个数。
公式=MAX(FREQUENCY(ROW(A44:A60),IF((A45:A60-A44:A59)<>1,ROW(A44:A59))))
本文配套的练习课件请加入QQ群:902294808下载。
做Excel高手,快速提升工作效率,部落窝教育Excel精品好课任你选择!
扫下方二维码关注公众号,可随时随地学习Excel:
相关推荐:
版权申明:
本文作者小窝;部落窝教育享有稿件专有使用权。若需转载请联系部落窝教育。