。例如,使用函數(shù) FREQUENCY 可以在分?jǐn)?shù)區(qū)域內(nèi)計(jì)算測驗(yàn)分?jǐn)?shù)的個(gè)數(shù)。由于函數(shù) FREQUENCY 返回一個(gè)數(shù)組,所以它
是一個(gè)區(qū)間數(shù)組或?qū)^(qū)間的引用,該區(qū)間用于對(duì) data_array 中的數(shù)值進(jìn)行分組。如果 bins_array 中不包含任何數(shù)值,函數(shù) FREQUENCY 返回的值與 data_array 中的元素個(gè)數(shù)相等。
應(yīng)用示例1:
求分布頻率。如圖:A2:A8存放成績,C2:C5存放分段的間隔(注意成績以整數(shù)為例,如果有0.5分,可以將69等改為69.9等。
解法:選擇D2:D6(注意:比C2:C5多一個(gè)元素,垂直數(shù)組,不能選擇橫向的單元格哦),輸入=FREQUENCY(A2:A8,C2:C5)并按下CTRL+SHIFT+ENTER結(jié)束,形成多單元格數(shù)組公式。
這個(gè)是FREQUENCY函數(shù)的基本用法。實(shí)質(zhì)上,F(xiàn)REQUENCY函數(shù)返回的是一個(gè)內(nèi)存數(shù)組,可以用于下一步運(yùn)算。
應(yīng)用示例2:
統(tǒng)計(jì)不重復(fù)之一
如圖:A2:A15包含空單元格、文本和有重復(fù)的數(shù)值,要統(tǒng)計(jì)共有多少個(gè)不重復(fù)的數(shù)值。
普通公式:=COUNT(1/FREQUENCY(A2:A15,A2:A15))
1、為什么是普通公式,而無須按三鍵形成數(shù)組公式?
猜測:設(shè)計(jì)FREQUENCY函數(shù)本身返回的就是數(shù)組,也就是相當(dāng)于給COUNT(1/{Frequency})一個(gè)類似于常量數(shù)組的待遇。
2、FREQUENCY(A2:A15,A2:A15)的運(yùn)算解析過程
由此可見:FREQUENCY(data,data)——第1、2參數(shù)相同時(shí):
1、第一次出現(xiàn)的數(shù)值,將返回其個(gè)數(shù),第2次出現(xiàn)就返回0;
2、忽略空單元格和文本(直接跳過統(tǒng)計(jì))
因此,1/Frequency,分母為0將返回#DIV/0!錯(cuò)誤,再利用COUNT函數(shù)忽略錯(cuò)誤值,統(tǒng)計(jì)不重復(fù)數(shù)值個(gè)數(shù)。
應(yīng)用示例3:
統(tǒng)計(jì)不重復(fù)之二A2:A15都是數(shù)字{1;1;5;1;1;6;9;8;4;9;8;1;8;3},沒有空單元格格和文本。求第3大的數(shù)(2個(gè)9算1次,3個(gè)8算1次,因此不重復(fù)的第3大值是6)
公式1:
復(fù)制內(nèi)容到剪貼板
代碼:
=LARGE(IF(FREQUENCY(A2:A15,A2:A15),A2:A15),3)
公式2:
復(fù)制內(nèi)容到剪貼板
代碼:
{=LARGE((FREQUENCY(A2:A15,A2:A15)>0)*A2:A16,3)}
通過應(yīng)用示例2的分析,可以理解,因?yàn)锳2:A15沒有需要忽略的東西,因此返回的數(shù)組保持了與A2:A15一一對(duì)應(yīng)的關(guān)系(即第1次數(shù)值出現(xiàn)的位置,返回個(gè)數(shù),第2次出現(xiàn)及以后都返回0),并且多一個(gè)元素。
對(duì)比兩個(gè)公式,區(qū)別:
一是IF對(duì)Frequency函數(shù)多出的那一行元素并不感冒,公式1的IF用A2:A15或A2:A16都可以(前提,A16是空單元格);而且在IF函數(shù)中,F(xiàn)requency仍然享受了無需按三鍵形成數(shù)組公式的待遇;
二是作為數(shù)組相乘(Frequency>0)*A2:A16,要求元素個(gè)數(shù)一致,因此要記得A16也算進(jìn)去。當(dāng)然,公式2的A16位置返回的是0,如果A列有負(fù)數(shù),或LARGE改SMALL,則統(tǒng)計(jì)會(huì)有問題。
應(yīng)用示例3:統(tǒng)計(jì)“連續(xù)”問題如圖:統(tǒng)計(jì)A2:A15中連續(xù)出現(xiàn)最多的次數(shù)
公式:
復(fù)制內(nèi)容到剪貼板
代碼:
=MAX(FREQUENCY(IF(A2:A14=A3:A15,ROW(2:14)),IF(A2:A14<>A3:A15,ROW(2:14))))+1
利用IF函數(shù),將
上下行內(nèi)容相同(也就是連續(xù)出現(xiàn))的記錄,返回為
上行的行號(hào)(數(shù)值,F(xiàn)REQUENCY只玩數(shù)值)以及FALSE
利用IF函數(shù),將
上下行內(nèi)容不同(也就是間隔的內(nèi)容)的記錄,返回為
上行的行號(hào)以及FALSE
再利用frequency對(duì)兩組行號(hào)和FALSE組成的數(shù)值進(jìn)行統(tǒng)計(jì),忽略FALSE,只計(jì)算:
FREQUENCY(滿足條件的行號(hào),不滿足條件的行號(hào))得到
滿足條件的行號(hào)的分布頻率,也就是連續(xù)出現(xiàn)次數(shù)-1
最后再用MAX(FREQUENCY)+1返回結(jié)果。