FREQUENCY函數(shù)以一列垂直數(shù)組返回一組數(shù)據(jù)的頻率分布,在之前的文章中,我們?cè)敿?xì)解了該函數(shù)的基礎(chǔ)語(yǔ)法及應(yīng)用示例。下面,我們以示例解FREQUENCY函數(shù)的一些精彩應(yīng)用。
示例1:統(tǒng)計(jì)不同數(shù)值的個(gè)數(shù)
如下圖1所示的工作表,在單元格區(qū)域A1:A8中有一列數(shù)值,我們需要使用公式算出該區(qū)域中不同數(shù)值的個(gè)數(shù)。此時(shí),可以使用公式:
=SUM(–(FREQUENCY(A1:A8,A1:A8)>0))
計(jì)算結(jié)果為5,如圖1中的單元格D2所示。在列表中,不同的數(shù)值是1、3、5、6、7共5個(gè)。
圖12
由于示例數(shù)據(jù)較少,我們可以手算出平均值:
(50+38+68+21+15+21+19+25)/8=32.125
通常想到的是使用AVERAGEIF函數(shù)求條件平均值,但是示例數(shù)據(jù)在三個(gè)不連續(xù)的區(qū)域,下面的公式:
=AVERAGEIF((C3:C7,E3:E7,G3:G7),”<>0″)
返回#VALUE!,因?yàn)锳VERAGEIF函數(shù)不能處理非連續(xù)區(qū)域。
使用SUM函數(shù)和COUNT函數(shù)相結(jié)合呢?
=SUM(C3:C7,E3:E7,G3:G7)/COUNT(C3:C7,E3:E7,G3:G7)
結(jié)果是17.133,因?yàn)镃OUNT函數(shù)將0值單元格也統(tǒng)計(jì)了。
使用COUNTIF函數(shù)代替COUNT函數(shù)忽略0值單元格:
=SUM(C3:C7,E3:E7,G3:G7)/COUNTIF((C3:C7,E3:E7,G3:G7),”<>0″)
返回#VALUE!,因?yàn)镃OUNTIF函數(shù)不能用于非連續(xù)區(qū)域。
以上公式都不得到正確的結(jié)果,因?yàn)椴荒軌颢@得這些非連續(xù)單元格區(qū)域中非零值的個(gè)數(shù)。可以使用FREQUENCY函數(shù)來(lái)解決,公式為:
=SUM(C3:C7,E3:E7,G3:G7)/INDEX(FREQUENCY((C3:C7,E3:E7,G3:G7),0),2)
FREQUENCY函數(shù)可用于非連續(xù)單元格區(qū)域,F(xiàn)REQUENCY((C3:C7,E3:E7,G3:G7),0)返回包含兩個(gè)值的數(shù)組:
{7;8}
即非連續(xù)單元格區(qū)域數(shù)值組成的數(shù)組中等于0的個(gè)數(shù)以及大于0的個(gè)數(shù)。
傳遞給INDEX函數(shù):
INDEX({7;8},2)
得到結(jié)果8,即為非連續(xù)單元格區(qū)域中大于0的個(gè)數(shù)。
結(jié)語(yǔ)
充分利用FREQUENCY函數(shù)的基本特性,結(jié)合實(shí)際場(chǎng)景靈活運(yùn)用,往往會(huì)為我們的實(shí)際應(yīng)用提供一些巧妙的解決方案。