沒有比Frequency更讓Excel高手情有獨鐘的了

沒有比Frequency更讓Excel高手情有獨鍾的了

文:傲看今朝

在Excel中,有一個非常專業統計函數,小白總是望而生畏,畏而遠之;然而Excel大神卻對它趨之若鶩,以能靈活使用這個公式為榮。這個函數就是Frequency函數,即頻率函數。這個函數都有啥魅力,能讓一眾高手如此高看?今天我就帶著大家一起扒一扒這個函數。

一、Frequency是個什麼樣的函數?

=FREQUENCY(Data_array,Bins_array)

Frequency總共有2個參數:Data_array以及Bins_array,兩個參數都可以使用數組或者單元格區域引用。其中Data_array表示的是被統計的數據區域;Bins_array表示的是間隔區域(就是分組數據了)。有點懵?彆著急,我以一個例子來簡單來說明一下:我們想統計一下各個分數段的人數,因此被統計的數據區域為:分數列(B9:B22),這個就叫做Data_array;另外要知道哪些分數段的人數呢?我們分成60分以下,大於60分小於等於70分,大於70分小於等於80,大於80分小於等於90分,90分以上這幾個區間,分隔值分別為:60;70;80;90,分隔值組成圖中的E10:E13區域,這就是Bins_array。

沒有比Frequency更讓Excel高手情有獨鍾的了

Frequency函數說明

現在咱們清楚了Data_array及Bins_array的區別了吧,Data_array就是被統計的原始數據,Bins_array是我們根據統計的需要設置的分段點集合。輸入這兩個參數,Frequency函數就可以輕鬆完成各分數段人數的統計了:

沒有比Frequency更讓Excel高手情有獨鍾的了

實例1公式說明

沒有比Frequency更讓Excel高手情有獨鍾的了

實例1

大家會發現我們通過Frequency數組的公式得到的結果的個數會比bins_array中的值個數要多1,這點大家要highlight一下,因為Frequency是按n個分段點劃分為n+1個數據區間的。對於每一個分段點,按照向上攝入原則進行統計,既小於等於當前分段點,大於上一個分段點,例如分段60表示:大於60(上一個分段點)且小於等於70……Frequency計算時會忽略文本和空單元格。

二、案例1:Frequency函數快速搞定各個業績段的員工人數

如下圖所示,我們需要快速將各個業績段的員工人數統計出來,跟上面的例子是一模一樣的。

沒有比Frequency更讓Excel高手情有獨鍾的了

案例1

選中G27:G30區域,編輯欄中輸入公式:{=FREQUENCY(C27:C48,F28:F30)},然後按下Ctrl+Shift+Enter鍵結束。

值得注意的是,Bins_array參數選擇的區域是F28:F30區域,而不是F27:F30,因為Frequency得到的結果數要比Bins_array中的分隔點(n)多一個(n+1)。

三、案例2:Frequency函數快速得到一個區域中不重複的單元格的個數

1.求某區域中不重複數值的個數,如下圖所示:

沒有比Frequency更讓Excel高手情有獨鍾的了

不重複數字的個數

Frequency函數有一個特性就是:Bins_array中的某個數字在data_array中第一次出現時,會統計這個數字在區域中出現的次數,當Bins_array中再有同樣的數字需要統計時,Frequency函數將直接不予統計得到的值將為0。我們可以利用這個特性統計某個區域中的不重複數字個數。

上圖我們要統計出現了多少個年齡?我們可以用Frequency函數輕鬆完成。

{=COUNT(1/FREQUENCY(B4:B25,B4:B25))}

思路:1.我們可以清楚地看到,frequency函數中的兩個參數是完全相同的。利用的就是剛剛提到的特性;2.用1除以Frequency得到的結果中的0時,將出現錯誤值(bins_array區域中的任意一個值都只能被統計一次);3.利用Count函數只對數字進行統計的特性得到最終的不重複數字。

2.求某區域中不重複的單元格數;

如下圖所示,如何統計有多少人報了名(多次報名只記1次)?

沒有比Frequency更讓Excel高手情有獨鍾的了

報名人數

思路:很明顯,利用剛才的方法是得不到正確的結果的。因為Frequency會將文本或者空單元格當成0進行統計。那如何才能快速地統計報名人數呢?有人會說,我刪除重複值後在用Counta統計就可以了,但那太不專業了。廢話不多說,如果我們要利用Frequency來完成這個需求,

1.我們首先需要將姓名轉換成數字然後再進行統計,在這一步我們可以每個姓名出現的位置來進行統計,如下面的公式:

{=MATCH(G4:G25,G4:G25,)}

2.由於數據區域有22個單元格,我們可以做一個1到22的數組,作為間隔區域,{=row(1:22)}

3.利用Frequency函數得到最後的公式:{=COUNT(1/FREQUENCY(MATCH(G4:G25,G4:G25,),ROW(1:22)))}

沒有比Frequency更讓Excel高手情有獨鍾的了

今天的分享就到這裡。


分享到:


相關文章: