我們在日常工作和生活中常常有這樣的需求:哪一款産品賣得最好?誰參與的次數最多?買時,我們會考慮,哪一個号碼出現在中獎号碼裡的次數最多?……給一個Excel表格,你如何快速地給出上述問題的答案呢?或許你會想到你所擅長的函數比如countif等去解決,然而,往往效率不夠高。針對此類問題,Excel官方其實專門給出了一個函數來解決這個問題,那就是Mode函數(07版及以下)
一、什麼mode函數?Mode函數:用以返回一組數據或者數據區域中的衆數(出現次數最高的數)。
Mode函數至少需要1個參數 ,最多可以有255個參數。參數可以數據區域引用,也可以一個一個的數字(數字之間用英文半角逗号“,”分開)。如下面的例子:
衆數
輸入一下公式即可得到,出現次數最多的數字了:
=MODE(A2:C14)
答案是5。
在使用mode函數時,我們需要特别注意:
參數可以是數字,或者是包含數字的名稱、數組或引用
如果數組或引用參數包含文本、邏輯值或空白單元格,則這些值将被忽略,但包含零值的單元格将計算在内;
如果數據集合中不含有重複的數據,則 MODE 數返回錯誤值N/A。
例如下面的例子:
為什麼出錯了?
Mode函數得出了錯誤值,原因就是因為這些數值都是文本,而不是真正的數字,而文本是會被忽略的。那麼正确的做法是什麼呢?
二、統計出現次數最多的開獎号碼接着上面的例子,我們該如何快速統計出出現次數最多的号碼呢?
思路
思路:我們可以利用Mode函數來做。然而,我們的Mode函數隻能對數字進行統計,文本是不能參與統計的。因此:
将所有的文本型數字轉化為數字:(1)引用區域加2個負号:=--B7:I22;(2)引用區域乘以1:=1*(B7:I22)
利用mode函數求衆數:=mode(--B7:I22)
規避沒有重複值的情況:=iferror(mode(--B7:I22),"")
将結果轉化為文本:=text(iferror(mode(--B7:I22),""),"00")
最終的公式為:
=TEXT(IFERROR(MODE(--B7:I22),""),"00")
結果為84。
三、誰是咱們公司的大衆情人?我們經常舉行選舉,班幹部的選舉,村長的選舉、大衆情人的投票等等,那麼如何快速地對得出誰是大家心目中的大衆情人呢?如下圖所示:
誰是大衆情人
思路:Mode函數隻會對數值進行統計,而文本隻會被自動忽略。那麼如何将文本轉化為數字呢?顯然,直接轉換是不可能,因此:
1.我們可以以每個名字的位置序号來代替這個名字:
{=MATCH(A$27:A$53,A$27:A$53,)}
match函數隻會返回某一個數字第一次出現的位置,我們是利用match函數的這個特性。
2.match函數的結果求出衆數:{=mode(MATCH(A$27:A$53,A$27:A$53,))}
3.我們隻知道出現次數最多的名字的位置序号是肯定不夠的,我們還需要返回名字。因此我們可以利用index函數來做。
{=index(A$27:A$53,mode(MATCH(A$27:A$53,A$27:A$53,)))}
4.為了防止公示顯示錯誤值,因此我們需要在外層嵌套一個iferror函數,最終結果如下:
{=IFERROR(INDEX(A$27:A$53,MODE(MATCH(A$27:A$53,A$27:A$53,))),"")}
關于衆數,今天我就簡單分享到這裡,順便也給大家提一下:除了mode函數,mode.mult和Mode.sgnl也是可以完成上述工作的,用法上跟mode函數沒啥大的區别。大家有興趣的可以去網上搜一搜,這裡我就不再贅述了。
大衆情人是林永大
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!