Excel函數應用之統計函數

 編者語:Excel是辦公室自動化中非常重要的一款軟件,很多巨型國際企業都是依靠Excel進行數據管理。它不僅僅能夠方便的處理表格和進行圖形分析,其更強大的功能體現在對數據的自動處理和計算,然而很多缺少理工科背景或是對Excel強大數據處理功能不瞭解的人卻難以進一步深入。編者以爲,對Excel函數應用的不瞭解正是阻擋普通用戶完全掌握Excel的攔路虎,然而目前這一部份內容的教學文章卻又很少見,所以特別組織了這一個《Excel函數應用》系列,希望能夠對Excel進階者有所幫助。《Excel函數應用》系列,將每週更新,逐步系統的介紹Excel各類函數及其應用,敬請關注!

Excel的統計工作表函數用於對數據區域進行統計分析。例如,統計工作表函數可以用來統計樣本的方差、數據區間的頻率分佈等。是不是覺得好像是很專業範疇的東西?是的,統計工作表函數中提供了很多屬於統計學範疇的函數,但也有些函數其實在你我的日常生活中是很常用的,比如求班級平均成績,排名等。在本文中,主要介紹一些常見的統計函數,而屬於統計學範疇的函數不在此贅述,詳細的使用方法可以參考Excel幫助及相關的書籍。

Excel函數精彩回顧
Excel函數應用之函數簡介
Excel函數應用之數學和三角函數
Excel函數應用之邏輯函數
Excel函數應用之文本/日期/時間函數
Excel函數應用之查詢與引用函數


在介紹統計函數之前,請大家先看一下附表中的函數名稱。是不是發現有些函數是很類似的,只是在名稱中多了一個字母A?比如,AVERAGE與AVERAGEA;COUNT與COUNTA。基本上,名稱中帶A的函數在統計時不僅統計數字,而且文本和邏輯值(如TRUE 和 FALSE)也將計算在內。在下文中筆者將主要介紹不帶A的幾種常見函數的用法。

一、用於求平均值的統計函數AVERAGE、TRIMMEAN

1、求參數的算術平均值函數AVERAGE
語法形式爲AVERAGE(number1,number2, ...)
其中Number1, number2, ...爲要計算平均值的 1~30 個參數。這些參數可以是數字,或者是涉及數字的名稱、數組或引用。如果數組或單元格引用參數中有文字、邏輯值或空單元格,則忽略其值。但是,如果單元格包含零值則計算在內。

2、求數據集的內部平均值TRIMMEAN
函數TRIMMEAN先從數據集的頭部和尾部除去一定百分比的數據點,然後再求平均值。當希望在分析中剔除一部分數據的計算時,可以使用此函數。比如,我們在計算選手平均分數中常用去掉一個最高分,去掉一個最低分,XX號選手的最後得分,就可以使用該函數來計算。
語法形式爲TRIMMEAN(array,percent)
其中Array爲需要進行篩選並求平均值的數組或數據區域。Percent爲計算時所要除去的數據點的比例,例如,如果 percent = 0.2,在 20 個數據點的集合中,就要除去 4 個數據點(20 x 0.2),頭部除去 2 個,尾部除去 2 個。函數 TRIMMEAN 將除去的數據點數目向下舍爲最接近的 2 的倍數。

3、舉例說明:示例中也列舉了帶A的函數AVERAGEA的求解方法。
求選手Annie的參賽分數。在這裏,我們先假定已經將該選手的分數進行了從高到底的排序,在後面的介紹中我們將詳細瞭解排序的方法。

 
圖1

二、用於求單元格個數的統計函數COUNT
語法形式爲COUNT(value1,value2, ...)
其中Value1, value2, ...爲包含或引用各種類型數據的參數(1~30個),但只有數字類型的數據才被計數。函數 COUNT 在計數時,將把數字、空值、邏輯值、日期或以文字代表的數計算進去;但是錯誤值或其他無法轉化成數字的文字則被忽略。
如果參數是一個數組或引用,那麼只統計數組或引用中的數字;數組中或引用的空單元格、邏輯值、文字或錯誤值都將忽略。如果要統計邏輯值、文字或錯誤值,應當使用函數 COUNTA。
舉例說明COUNT函數的用途,示例中也列舉了帶A的函數COUNTA的用途。仍以上例爲例,要計算一共有多少評委參與評分(用函數COUNTA),以及有幾個評委給出了有效分數(用函數COUNT)。

 
圖2

三、求區域中數據的頻率分佈FREQUENCY
由於函數 FREQUENCY 返回一個數組,必須以數組公式的形式輸入。
語法形式爲FREQUENCY(data_array,bins_array)
其中Data_array爲一數組或對一組數值的引用,用來計算頻率。如果 data_array 中不包含任何數值,函數 FREQUENCY 返回零數組。Bins_array爲一數組或對數組區域的引用,設定對 data_array 進行頻率計算的分段點。如果 bins_array 中不包含任何數值,函數 FREQUENCY 返回 data_array 元素的數目。
看起來FREQUENCY的用法蠻複雜的,但其用處很大。比如可以計算不同工資段的人員分佈,公司員工的年齡分佈,學生成績的分佈情況等。這裏以具體示例說明其基本的用法。
以計算某公司的員工年齡分佈情況爲例說明。在工作表裏列出了員工的年齡。這些年齡爲 28、25、31、21、44、33、22 和 35,並分別輸入到單元格 C4:C11。這一列年齡就是 data_array。Bins_array 是另一列用來對年齡分組的區間值。在本例中,bins_array 是指 C13:C16 單元格,分別含有值 25、30、35、和 40。以數組形式輸入函數 FREQUENCY,就可以計算出年齡在 25歲以下、26~30歲、31~35歲、36~40歲和40歲以上各區間中的數目。本例中選擇了5個垂直相鄰的單元格後,即以數組公式輸入下面的公式。返回的數組中的元素個數比 bins_array(數組)中的元素個數多 1。第五個數字1表示大於最高間隔 (40) 的數值(44)的個數。函數 FREQUENCY 忽略空白單元格和文本值。

{=FREQUENCY(C4:C11,C13:C16)}等於 {2;2;2;1;1}

 
圖3

四、一組用於求數據集的滿足不同要求的數值的函數

1、求數據集的最大值MAX與最小值MIN
這兩個函數MAX、MIN就是用來求解數據集的極值(即最大值、最小值)。函數的用法非常簡單。語法形式爲 函數(number1,number2,...),其中Number1,number2,... 爲需要找出最大數值的 1 到 30 個數值。如果要計算數組或引用中的空白單元格、邏輯值或文本將被忽略。因此如果邏輯值和文本不能忽略,請使用帶A的函數MAXA或者MINA 來代替。

2、求數據集中第K個最大值LARGE與第k個最小值SMALL
這兩個函數LARGE、SMALL與MAX、MIN非常想像,區別在於它們返回的不是極值,而是第K個值。語法形式爲:函數(array,k),其中Array爲需要找到第 k 個最小值的數組或數字型數據區域。K爲返回的數據在數組或數據區域裏的位置(如果是LARGE爲從大到小排,若爲SMALL函數則從小到大排)。
說到這,大家可以想得到吧。如果K=1或者K=n(假定數據集中有n個數據)的時候,是不是就可以返回數據集的最大值或者最小值了呢。

3、 求數據集中的中位數MEDIAN
MEDIAN函數返回給定數值集合的中位數。所謂中位數是指在一組數據中居於中間的數,換句話說,在這組數據中,有一半的數據比它大,有一半的數據比它小。
語法形式爲MEDIAN(number1,number2, ...)其中Number1, number2,...是需要找出中位數的 1 到 30 個數字參數。如果數組或引用參數中包含有文字、邏輯值或空白單元格,則忽略這些值,但是其值爲零的單元格會計算在內。
需要注意的是,如果參數集合中包含有偶數個數字,函數 MEDIAN 將返回位於中間的兩個數的平均值。

4、 求數據集中出現頻率最多的數MODE
MODE函數用來返回在某一數組或數據區域中出現頻率最多的數值。跟 MEDIAN 一樣,MODE 也是一個位置測量函數。
語法形式爲MODE(number1,number2, ...)其中Number1, number2, ... 是用於衆數(衆數指在一組數值中出現頻率最高的數值)計算的 1 到 30 個參數,也可以使用單一數組(即對數組區域的引用)來代替由逗號分隔的參數。

5、 以上函數的示例
以某單位年終獎金分配表爲例說明。在示例中,我們將利用這些函數求解該單位年終獎金分配中的最高金額、最低金額、平均金額、中間金額、衆數金額以及第二高金額等。
詳細的公式寫法可從圖中清楚的看出,在此不再贅述。

 
圖4

五、用來排位的函數RANK、PERCENTRANK

1、一個數值在一組數值中的排位的函數RANK
數值的排位是與數據清單中其他數值的相對大小,當然如果數據清單已經排過序了,則數值的排位就是它當前的位置。數據清單的排序可以使用Excel提供的排序功能完成。
語法形式爲RANK(number,ref,order) 其中Number爲需要找到排位的數字;Ref 爲包含一組數字的數組或引用。Order爲一數字用來指明排位的方式。
如果 order 爲 0 或省略,則Excel 將 ref 當作按降序排列的數據清單進行排位。
如果 order 不爲零,Microsoft Excel 將 ref 當作按升序排列的數據清單進行排位。
需要說明的是,函數 RANK 對重複數的排位相同。但重複數的存在將影響後續數值的排位。嗯,這就好像並列第幾的概念啊。例如,在一列整數裏,如果整數 10 出現兩次,其排位爲 5,則 11 的排位爲 7(沒有排位爲 6 的數值)。

2、求特定數值在一個數據集中的百分比排位的函數PERCENTRANK
此PERCENTRANK函數可用於查看特定數據在數據集中所處的位置。例如,可以使用函數 PERCENTRANK 計算某個特定的能力測試得分在所有的能力測試得分中的位置。
語法形式爲PERCENTRANK(array,x,significance) 其中Array爲彼此間相對位置確定的數字數組或數字區域。X爲數組中需要得到其排位的值。Significance爲可選項,表示返回的百分數值的有效位數。如果省略,函數 PERCENTRANK 保留 3 位小數。

3、與排名有關的示例
仍以某單位的年終獎金分配爲例說明,這裏以員工Annie的排名爲例說明公式的寫法。
獎金排名的公式寫法爲:
=RANK(C3,$C$3:$C$12)
百分比排名的公式寫法爲:
=PERCENTRANK($C$3:$C$12,C3)

 
圖5

以上我們介紹了Excel統計函數中比較常用的幾種函數,更多的涉及專業領域的統計函數可以參看附表以及各種相關的統計學書籍。

附表:

函數名稱函數說明語法形式
AVEDEV 返回一組數據與其均值的絕對偏差的平均值,即離散度。 AVEDEV(number1,number2, ...)
AVERAGE 返回參數算術平均值。 AVERAGE(number1,number2, ...)
AVERAGEA 計算參數清單中數值的平均值(算數平均值)。不僅數字,而且文本和邏輯值(如TRUE 和 FALSE)也將計算在內。 AVERAGEA(value1,value2,...)
BETADIST 返回 Beta 分佈累積函數的函數值。Beta 分佈累積函數通常用於研究樣本集合中某些事物的發生和變化情況。 BETADIST(x,alpha,beta,A,B)
BETAINV 返回 beta 分佈累積函數的逆函數值。即,如果 probability = BETADIST(x,...),則 BETAINV(probability,...) = x。beta 分佈累積函數可用於項目設計,在給定期望的完成時間和變化參數後,模擬可能的完成時間。 BETAINV(probability,alpha,beta,A,B)
BINOMDIST 返回一元二項式分佈的概率值。 BINOMDIST(number_s,trials,probability_s,cumulative)
CHIDIST 返回 γ2 分佈的單尾概率。γ2 分佈與 γ2 檢驗相關。使用 γ2 檢驗可以比較觀察值和期望值。 CHIDIST(x,degrees_freedom)
CHIINV 返回 γ2 分佈單尾概率的逆函數。 CHIINV(probability,degrees_freedom)
CHITEST 返回獨立性檢驗值。函數 CHITEST 返回 γ2 分佈的統計值及相應的自由度。 CHITEST(actual_range,expected_range)
CONFIDENCE 返回總體平均值的置信區間。置信區間是樣本平均值任意一側的區域。 CONFIDENCE(alpha,standard_dev,size)
CORREL 返回單元格區域 array1 和 array2 之間的相關係數。使用相關係數可以確定兩種屬性之間的關係。 CORREL(array1,array2)
COUNT 返回參數的個數。利用函數 COUNT 可以計算數組或單元格區域中數字項的個數。 COUNT(value1,value2, ...)
COUNTA 返回參數組中非空值的數目。利用函數COUNTA 可以計算數組或單元格區域中數據項的個數。 COUNTA(value1,value2, ...)
COVAR 返回協方差,即每對數據點的偏差乘積的平均數,利用協方差可以決定兩個數據集之間的關係。 COVAR(array1,array2)
CRITBINOM 返回使累積二項式分佈大於等於臨界值的最小值。此函數可以用於質量檢驗。 CRITBINOM(trials,probability_s,alpha)
DEVSQ 返回數據點與各自樣本均值偏差的平方和。 DEVSQ(number1,number2,...)
EXPONDIST 返回指數分佈。使用函數 EXPONDIST 可以建立事件之間的時間間隔模型。 EXPONDIST(x,lambda,cumulative)
FDIST 返回 F 概率分佈。使用此函數可以確定兩個數據系列是否存在變化程度上的不同。 FDIST(x,degrees_freedom1,degrees_freedom2)
FINV 返回 F 概率分佈的逆函數值。 FINV(probability,degrees_freedom1,degrees_freedom2)
FISHER 返回點 x 的 Fisher 變換。該變換生成一個近似正態分佈而非偏斜的函數。 FISHER(x)
FISHERINV 返回 Fisher 變換的逆函數值。使用此變換可以分析數據區域或數組之間的相關性。 FISHERINV(y)
FORECAST 根據給定的數據計算或預測未來值。 FORECAST(x,known_y's,known_x's)
FREQUENCY 以一列垂直數組返回某個區域中數據的頻率分佈。 FREQUENCY(data_array,bins_array)
FTEST 返回 F 檢驗的結果。F 檢驗返回的是當數組 1 和數組 2 的方差無明顯差異時的單尾概率。可以使用此函數來判斷兩個樣本的方差是否不同。 FTEST(array1,array2)
GAMMADIST 返回伽瑪分佈。可以使用此函數來研究具有偏態分佈的變量。伽瑪分佈通常用於排隊分析。 GAMMADIST(x,alpha,beta,cumulative)
GAMMAINV 返回伽瑪分佈的累積函數的逆函數。 GAMMAINV(probability,alpha,beta)
GAMMALN 返回伽瑪函數的自然對數,Γ(x)。 GAMMALN(x)
GEOMEAN 返回正數數組或數據區域的幾何平均值。 GEOMEAN(number1,number2, ...)
GROWTH 根據給定的數據預測指數增長值。 GROWTH(known_y's,known_x's,new_x's,const)
HARMEAN 返回數據集合的調和平均值。調和平均值與倒數的算術平均值互爲倒數。 HARMEAN(number1,number2, ...)
HYPGEOMDIST 返回超幾何分佈。 HYPGEOMDIST(sample_s,number_sample,
population_s,number_population)
INTERCEPT 利用已知的 x 值與 y 值計算直線與 y 軸的截距。 INTERCEPT(known_y's,known_x's)
KURT 返回數據集的峯值。 KURT(number1,number2, ...)
LARGE 返回數據集裏第 k 個最大值。使用此函數可以根據相對標準來選擇數值。 LARGE(array,k)
LINEST 使用最小二乘法計算對已知數據進行最佳直線擬合,並返回描述此直線的數組。 LINEST(known_y's,known_x's,const,stats)
LOGEST 在迴歸分析中,計算最符合觀測數據組的指數迴歸擬合曲線,並返回描述該曲線的數組。 LOGEST(known_y's,known_x's,const,stats)
LOGINV 返回 x 的對數正態分佈累積函數的逆函數。 LOGINV(probability,mean,standard_dev)
LOGNORMDIST 返回 x 的對數正態分佈的累積函數。 LOGNORMDIST(x,mean,standard_dev)
MAX 返回數據集中的最大數值。 MAX(number1,number2,...)
MAXA 返回參數清單中的最大數值。 MAXA(value1,value2,...)
MEDIAN 返回給定數值集合的中位數。中位數是在一組數據中居於中間的數。 MEDIAN(number1,number2, ...)
MIN 返回給定參數表中的最小值。 MIN(number1,number2, ...)
MINA 返回參數清單中的最小數值。 MINA(value1,value2,...)
MODE 返回在某一數組或數據區域中出現頻率最多的數值。 MODE(number1,number2, ...)
NEGBINOMDIST 返回負二項式分佈。 NEGBINOMDIST(number_f,number_s,probability_s)
NORMDIST 返回給定平均值和標準偏差的正態分佈的累積函數。 NORMDIST(x,mean,standard_dev,cumulative)
NORMINV 返回給定平均值和標準偏差的正態分佈的累積函數的逆函數。 NORMINV(probability,mean,standard_dev)
NORMSDIST 返回標準正態分佈的累積函數,該分佈的平均值爲 0,標準偏差爲 1。 NORMSDIST(z)
NORMSINV 返回標準正態分佈累積函數的逆函數。該分佈的平均值爲 0,標準偏差爲 1。 NORMSINV(probability)
PEARSON 返回 Pearson(皮爾生)乘積矩相關係數,r,這是一個範圍在 -1.0 到 1.0 之間(包括 -1.0 和 1.0 在內)的無量綱指數,反映了兩個數據集合之間的線性相關程度。 PEARSON(array1,array2)
PERCENTILE 返回數值區域的 K 百分比數值點。可以使用此函數來建立接受閥值。例如,可以確定得分排名在 90 個百分點以上的檢測侯選人。 PERCENTILE(array,k)
PERCENTRANK 返回特定數值在一個數據集中的百分比排位。此函數可用於查看特定數據在數據集中所處的位置。例如,可以使用函數 PERCENTRANK 計算某個特定的能力測試得分在所有的能力測試得分中的位置。 PERCENTRANK(array,x,significance)
PERMUT 返回從給定數目的對象集合中選取的若干對象的排列數。排列可以爲有內部順序的對象或爲事件的任意集合或子集。排列與組合不同,組合的內部順序無意義。此函數可用於彩票計算中的概率。 PERMUT(number,number_chosen)
POISSON 返回泊松分佈。泊松分佈通常用於預測一段時間內事件發生的次數,比如一分鐘內通過收費站的轎車的數量。 POISSON(x,mean,cumulative)
PROB 返回一概率事件組中落在指定區域內的事件所對應的概率之和。如果沒有給出 upper_limit,則返回 x _range 內值等於 lower_limit 的概率。 PROB(x_range,prob_range,lower_limit,upper_limit)
QUARTILE 返回數據集的四分位數。四分位數通常用於在銷售額和測量值數據集中對總體進行分組。例如,可以使用函數 QUARTILE 求得總體中前 25% 的收入值。 QUARTILE(array,quart)
RANK 返回一個數值在一組數值中的排位。數值的排位是與數據清單中其他數值的相對大小(如果數據清單已經排過序了,則數值的排位就是它當前的位置)。 RANK(number,ref,order)
RSQ 返回根據 known_y's 和 known_x's 中數據點計算得出的 Pearson 乘積矩相關係數的平方。有關詳細信息,請參閱函數 REARSON。R 平方值可以解釋爲 y 方差與 x 方差的比例。 RSQ(known_y's,known_x's)
SKEW 返回分佈的偏斜度。偏斜度反映以平均值爲中心的分佈的不對稱程度。正偏斜度表示不對稱邊的分佈更趨向正值。負偏斜度表示不對稱邊的分佈更趨向負值。 SKEW(number1,number2,...)
SLOPE 返回根據 known_y's 和 known_x's 中的數據點擬合的線性迴歸直線的斜率。斜率爲直線上任意兩點的重直距離與水平距離的比值,也就是迴歸直線的變化率。 SLOPE(known_y's,known_x's)
SMALL 返回數據集中第 k 個最小值。使用此函數可以返回數據集中特定位置上的數值。 SMALL(array,k)
STANDARDIZE 返回以 mean 爲平均值,以 standard-dev 爲標準偏差的分佈的正態化數值。 STANDARDIZE(x,mean,standard_dev)
STDEV 估算樣本的標準偏差。標準偏差反映相對於平均值(mean)的離散程度。 STDEV(number1,number2,...)
STDEVA 估算基於給定樣本的標準偏差。標準偏差反映數值相對於平均值(mean)的離散程度。文本值和邏輯值(如 TRUE 或 FALSE)也將計算在內。 STDEVA(value1,value2,...)
STDEVP 返回以參數形式給出的整個樣本總體的標準偏差。標準偏差反映相對於平均值(mean)的離散程度。 STDEVP(number1,number2,...)
STDEVPA 計算樣本總體的標準偏差。標準偏差反映數值相對於平均值(mean)的離散程度。 STDEVPA(value1,value2,...)
STEYX 返回通過線性迴歸法計算 y 預測值時所產生的標準誤差。標準誤差用來度量根據單個 x 變量計算出的 y 預測值的誤差量。 STEYX(known_y's,known_x's)
TDIST 返回學生 t- 分佈的百分點(概率),t 分佈中數值 (x) 是 t 的計算值(將計算其百分點)。t 分佈用於小樣本數據集合的假設檢驗。使用此函數可以代替 t 分佈的臨界值表。 TDIST(x,degrees_freedom,tails)
TINV 返回作爲概率和自由度函數的學生 t 分佈的 t 值。 TINV(probability,degrees_freedom)
TREND 返回一條線性迴歸擬合線的一組縱座標值(y 值)。即找到適合給定的數組 known_y's 和 known_x's 的直線(用最小二乘法),並返回指定數組 new_x's 值在直線上對應的 y 值。 TREND(known_y's,known_x's,new_x's,const)
TRIMMEAN 返回數據集的內部平均值。函數 TRIMMEAN 先從數據集的頭部和尾部除去一定百分比的數據點,然後再求平均值。當希望在分析中剔除一部分數據的計算時,可以使用此函數。 TRIMMEAN(array,percent)
TTEST 返回與學生氏- t 檢驗相關的概率。可以使用函數 TTEST 判斷兩個樣本是否可能來自兩個具有相同均值的總體。 TTEST(array1,array2,tails,type)
VAR 估算樣本方差。 VAR(number1,number2,...)
VARA 估算基於給定樣本的方差。不僅數字,文本值和邏輯值(如 TRUE 和 FALSE)也將計算在內。 VARA(value1,value2,...)
VARP 計算樣本總體的方差。 VARP(number1,number2,...)
VARPA 計算樣本總體的方差。不僅數字,文本值和邏輯值(如 TRUE 和 FALSE)也將計算在內。 VARPA(value1,value2,...)
WEIBULL 返回韋伯分佈。使用此函數可以進行可靠性分析,比如計算設備的平均故障時間。 WEIBULL(x,alpha,beta,cumulative)
ZTEST 返回 z 檢驗的雙尾 P 值。Z 檢驗根據數據集或數組生成 x 的標準得分,並返回正態分佈的雙尾概率。可以使用此函數返回從某總體中抽取特定觀測值的似然估計。 ZTEST(array,x,sigma)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章