Cross Table:卡方分配與卡方檢定

卡方檢定( Chi-Squared Test )這個中文譯名似乎很奇怪,既非人名,也不像在描述函數特徵,或許有人跟我一樣,學統計的時候也曾被這個詭異的名字困擾了一陣子吧。

卡方檢定是基礎統計學中經常被低估的一塊,事實上卡方檢定是最古老的統計學基礎之一,從卡方檢定身上可以延伸出許多統計學歷史中的重要進展,而卡方檢定與卡方分配又和二維列聯表(中文有時也稱為交叉表)分析息息相關,是類別資料分析最基本也最重要的前提知識。

交叉表的分析議題,可依維度分成二維表及三維表兩大類,本文與《On the Cross:Pearson, Yates and Fisher》處理二維表議題,在《Beyond The Cross :三維表( Three-Way Table )與 Simpson’s Paradox 》當中則介紹三維表的卡方分析。

「卡方」名稱種類與涵義是初學者最容易感到混淆的地方,通常有三個情境會直接簡稱為「卡方」:卡方分配、卡方檢定、卡方統計量。

首先從卡方分配說起。

伽瑪 Gamma、 卡方 Chi-Squared 與 常態分配 Normal Distribution 的關係

什麼是卡方分配?卡方分配是「連續型」機率分配當中, Gamma 分配的一個特例,同時指數分配也是由 Gamma 分配衍生而來。

Gamma 分配簡單區分成兩個部份: Gamma 函數與 Gamma 機率函數。

Gamma 分配及 Gamma 函數有許多不同的型態,要了解卡方分配的源頭,只需要理解最基本的寫法即可:

gamma-and-chi-squared

附上維基百科的例圖便於參考:

gamma-and-chi-squared-2

統計書後所附的查表機率,一般都是指「累積機率函數( c.d.f )」,也就是前式中的第二種寫法。

從 Gamma 的知識中我們已經得到用來推演卡方分配的重要基礎:

gamma-and-chi-squared-3

一樣附上維基百科例圖:

gamma-and-chi-squared-4

gamma-and-chi-squared-5

從卡方分配與常態分配的這層關係就可以大略猜到了,沒錯,大樣本下的卡方分配是近似常態分配的,那就是為什麼卡方機率圖形在教科書裡的樣子會選擇弄成有點像常態的樣子。

當自由度較大時(統計慣例, 30 個以上,但不是絕對數,可以使用這條公式進行轉換:

chi-squared-and-normal-distribution

雖然卡方分配與常態分配的關係密切,只看卡方分配的公式本身,是很難看出有什麼直觀意義的,但這個分配卻是推論統計當中最為重要的分配之一,從母體變異數的估計與檢定、卡方的近似應用、類別資料分析以及卡方檢定,每一種都有其價值。

再加上,卡方檢定不要求母體所屬分配,也不必知道母體參數為何,這就更厲害了,因此讓卡方檢定在無母數統計的領域也佔有一席之地。

三種經常被搞混的卡方檢定

說到卡方分配的用處,最直接的聯想就是「卡方檢定」了。

「卡方檢定」是總稱的說法,因為必學的卡方檢定有三種,雖然意義不太相同,計算過程卻是相當類似,也能處理相同的檢定目標,很容易引起混淆。

它們分別是:

「卡方獨立性檢定( The Chi-Squared Test of Independence )」

「卡方同質性檢定( Test of Homogeneity )」

「卡方適合度檢定( Test of Goodness-of-Fit )」

而要執行顯著性檢定,不可或缺的要素就是「檢定統計量」,卡方檢定的檢定統計量是由統計史上鼎鼎大名的老皮爾森( Karl Pearson )在 1900 年所提出的(天阿,沿用了 100 多年的統計量),依其資料型態,會有一些小差異。

卡方檢定公式

題外話,最初的卡方統計量自由度並非如此,這牽涉到兩位統計學的巨人, Pearson 與 Fisher 的故事,我們在《卡方檢定 ON THE CROSS:PEARSON, YATES, FISHER 與精確檢定》這篇文章中會多談一些。

關於卡方檢定的自由度,這裡必須強調的是,當計算中沒有使用任何樣本參數代替母體參數進行估計的時候, m 是為 0 的,每多使用一個參數替代,自由度就會減少 1 。

範例可以參考中國醫藥大學生物統計中心王俊毅助理教授《適合度檢定:卡方分布之自由度》一文。

卡方適合度檢定( Test of Goodness-of-Fit )

在前面的卡方檢定公式中我們看到了理論次數與觀測次數,有什麼特別的地方嗎?

注意這個觀測次數的名稱,它意味著實際上我們只有「抽樣一組(次)樣本」而已,而理論次數不是透過本次抽樣的資料,可能是一組宣稱次數,或是出於歷史事實的資料。

譬如說,今天我們收集了一組跟身高有關的研究資料,為了要使用「要求常態分配假設才能適用」的統計模型來分析,當然首要的工作就是測試看看,研究資料是不是符合常態分配。

設置虛無假設如下:

卡方檢定公式-2

接著我們可以選擇要區分的組數,譬如說 5 組。簡化起見,假設根據原始資料已算出樣本平均數 166 ,標準差 10 ,檢定的目標就是測試該組資料是否為平均數 166 、標準差 10 的常態分配。

卡方檢定公式-3

由於我們使用了樣本平均數與樣本標準差來代替母體平均數及標準差,因此本例的卡方自由度為 K = 5 – 1 – 2 = 2 。

在設定信心水準 95% 下,自由度為 2 的卡方値 = 5.991 ,而我們的卡方統計量為 5.9977 …,看起來似乎是必須拒絕虛無假設。

…但是小心!卡方的檢定結果並不總是如此。

採取相反做法,不拒絕虛無假設,認定這組資料還是服從常態分配,不見得是個壞主意。

Why ?只因為統計量值很接近臨界値嗎?

通常我們遇到統計量與臨界値相當的情況,採取保守一點的做法會比較恰當,所謂保守,是指縮小可信區間,以確保「顯著」的結果都是「正確的」。

但是有時候卡方檢定能提供比保守做法更強力的理由,因為「卡方統計量」是受到參數 V (自由度)影響甚鉅的値,換個擴充的例子吧:

卡方檢定公式-4

設定信心水準 95% 下,自由度為 27 的卡方値 = 40.11 ,而我們的卡方統計量為 41.6134 …,再一次,看起來結論是拒絕虛無假設。

但是回到前面說過的,卡方自由度較大時近似常態用的公式:

卡方檢定公式-5

近似常態下的卡方臨界値 = 39.828 ,結論是不拒絕虛無假設。

很神奇吧?這是執行所有的卡方檢定時,都應該要注意的小細節。

至此 Case 1 告一段落,剛才所展示的卡方檢定,也就是卡方適合度檢定( Test of Goodness-of-Fit ),用來檢測樣本機率分配是否符合預期。

卡方獨立性檢定( The Chi-Squared Test of Independence )與卡方同質性檢定( Test of Homogeneity )

喘口氣,接著來到 Case 2 :

前面談卡方適合度檢定時提過,它是只有「抽樣一組(次)樣本」與「理論次數」之間的比較,在 Case 2 ,則是「抽樣兩組(次)與兩組(次)以上樣本」的比較。

這就是「卡方獨立性檢定(The Chi-Squared Test of Independence)」與「卡方同質性檢定(Test of Homogeneity)」在做的事情了。

請注意…,這兩個檢定的計算過程是一模一樣的,但是假設檢定卻代表不同意義:

卡方檢定公式-6

從上面的假設檢定可知,「卡方獨立性檢定」探討的是「資料關聯性」的問題,而「卡方同質性檢定」關心的則是「各類別比例是否相同」。

當然這是完全不同的問題,只不過,無論資料原先是屬質或屬量,要執行卡方檢定必定會整理成 r x c 的二維交叉表格( Contingency Table )的形式,如此一來,關於資料原本代表的意義就不那麼容易看出來了。

卡方檢定公式-7

嗯?你有沒有注意到,自由度這會兒怎麼又不同了?

那是當然的了,前面重複講過卡方適合度檢定時是只有「抽樣一組(次)樣本」與「理論次數」之間的比較,卡方獨立性檢定與卡方同質性檢定則是「兩組(次)與兩組(次)以上樣本」的比較,以樣本替代的未知參數數量不同,自由度當然也就不一樣了。

再詳細一點,下面這個例題可以看成我們做了 3 次隨機調查,對 15 – 30 年齡層抽了一次,對 30 – 45 年齡層與 45 – 60 年齡層也各抽了一次。

卡方檢定公式-8

這是我們的「觀測次數」。

卡方檢定公式-9

卡方檢定公式-10

換成「卡方同質性檢定」,探討的內容就會變成「三個年齡層在三種工作熱情分數評比上,比例是否相同」,思考一下這該如何計算?

雖然要檢定的是比率,但是透過卡方檢定必須轉換成觀測次數與理論次數的關係,於是結果很奇妙的會跟上面的做法一模一樣。

卡方檢定的自由度

還有個問題,自由度( n1 – 1 )*( n2 – 1 )是怎麼回事?

其實答案就在剛才的計算過程裡。

我們實際上是不知道理論機率各行與各列的機率總和,別忘了我們手上的資料是抽樣樣本,我們不知道真實母體在我們所探討議題的比例會是如何。

於是我們用觀測機率去算出一個 3 X 3 = 9 的表格,共有 9 個機率總和是我們「猜」出來的。

但是我們其實沒有猜那麼多,因為已知機率總和是 1 ,三個行的機率總和是 1 ,三個列的機率總和也是 1 ,所以只要知道每行或每列的其中 2 個格子就能決定第3格的機率為何了,也就是實際上我們只需要猜( 3 – 1 )*( 3 – 1 )= 4 格就行了,所以本例的卡方統計量自由度就是 4 。

隱藏版的第 4 種卡方檢定

「標準卡方統計量」還有另一種用法,可以用來做變異數相關的推論,這可能是某些人對卡方的主要印象。

當母體平均數及變異數未知,由樣本資料推出的母體變異數區間:

卡方檢定公式-11

假如今天的檢定目標是「兩個母體(各有 m , n 個樣本)的變異數」,且兩母體平均數皆未知,可改用 F 檢定:

卡方檢定公式-12

這種檢定形式對付單一母體、兩母體都不是問題,那如果今天我們想處理 K 個母體變異數之間的關係呢?

卡方檢定提供了另外一種應用,或者說一種統計量「近似」卡方分配的檢定,可以用來檢 定K 個母體變異數的命題,它的名字是 Bartlett’s Test of Equal Variances

因為名字很容易跟因素分析( Factor Analysis )中常見的巴氏球型檢定( Bartlett’s Test of Sphericity )搞混,所以有時中文教科書會直接稱為「卡方變異數齊一性檢定( Chi-Square Test of Equal Variances )」。

卡方檢定公式-12

對概似比檢定有研究的人應該從分子看出了一些隱情吧,使用這個式子的原因是為了讓概似比檢定有較好的近似卡方效果( Bartlett,1937 ),而且是漸進卡方分佈,樣本較大時,會有較好的近似效果。

順道一提,還有一種伽瑪 G^2 統計量常常拿來跟卡方統計量相比較,兩者共享許多類似的性質,用法也大同小異,只不過 G^2 是從概似比的角度計算而已。

這組公式又臭又長,有沒有簡單理解它的方法?

仔細觀察式中的 Sp^2 ,學過統計的人應該都覺得它很眼熟吧?

還記得當初學習「兩母體平均數檢定(初統必學必考)」時,若為常態小樣本,採用 T 檢定,且兩母體變異數未知但「相同」,需將原先分母中的兩兩變異數改為「 Pooled Sample Variance 」嗎?

就是它啦!

Sp^2 是一個平均與權重的概念,公式中用 Sp^2 與個別的 Si^2 比較,假如 k 個母體變異數都相同, Sp^2 與 Si^2 必然相去不多,分子小,卡方値就小,自然就偏向不拒絕「變異數都相同」的虛無假設了。

卡方檢定的一些限制

卡方檢定是一個與次數息息相關的檢定方法,主要的限制也都與「次數」這件事有關。但是關於卡方的使用注意事項,在不同書裡卻可以看見不一樣的講法,這是造成學習者渾淆的另一個原因(真是讓人火大)。

這裡稍作整理。

卡方檢定迷思破除之 1 :卡方檢定表格中,每一個格子的觀測次數不得小於 5 。

更正確的說法是,當 df > 1 時,如果不超過 20% 的格子次數小於 5 (或者說是有 80% 以上的格子次數都大於 5 ),那麼「每一個格子( Cell )的觀測次數不得小於 5 」這個限制可以破除,不但如此,「格子的最低次數可以容許至 1 (但不得為 0 )」。

什麼?居然有這種事?

前面也 OS 過了,卡方檢定是用了 100 多年的方法,這麼漫長的時間,當然有過各種卡方檢定品質與限制的研究(更精確一點,是有關估計值效率性的問題),這個放寬的條件,在於仔細檢驗卡方的檢定效力之後,認為它是保持卡方檢定的最低下限,附帶一個不可違反的規則:格子次數不得為 0 。

只要符合以上放寬條件,就算格子次數小於 5 還是可以執行卡方檢定的。

卡方檢定迷思破除之 2 :細格次數不足 5 時應予以合併。

這個規則本身沒什麼太大問題,但你會發現有些教材裡面「輕描淡寫」, why ?

統計學家知道,雖然合併格子可以解決次數不足的問題,但是同時也會損失對應的資訊,不得已的話,還是應該合併格子或者採用放寬條件的方法,但也因此需要採保留態度。

需指出的是,合併前兩(或以上)格子的意義之間差距越多,損失的資訊越多,檢定的結果就越有偏誤。

另外一些學者會建議使用葉氏連續校正( Yates Continuity Correction ),這個修正法有兩個作用,一個是試圖改善當次數都是整數時,卡方檢定效果低下的缺點,另一個用途就是當 2 X 2 表格中,僅有1格次數未達5次時,可採用這個方法取代卡方做檢定。

關於葉氏連續校正這個方法更詳細的說明以及歷史背景,可繼續參閱《卡方檢定 ON THE CROSS:PEARSON, YATES, FISHER 與精確檢定》

連續校正表面上看似是個厲害好用的方法,但是現在已經不再流行。原因之一是葉氏連續校正偏於保守,造成型二錯誤較高的現象,所以不是每本書都會加入這個內容。

目前主流的意見,比較支持合併格子而非放寬條件的辦法。

卡方檢定迷思破除之 3 :卡方檢定的樣本情境

這個問題比較少被提到,但是學習卡方檢定應該要曉得。

卡方統計量,以及類似的 G^2 統計量都是近似卡方分配,在大樣本的時候兩者作用差不多,而卡方統計量收歛的速度比較快。

在樣本很小的時候,兩者的近似都不是很好。這種情況應該考慮採用費雪精確檢定( Fisher ‘s Exact Test )

而當樣本很大的時候,也有一些問題,因為卡方値會變得很大,也就是幾乎不會接受虛無假設。顯著水準設為 0.05 ,自由度為 1 的卡方値約 3.841 ,自由度改為 80 的時候,卡方値暴增到 101.9 。

因此大樣本的卡方雖然近似很好,卻可能太過敏感,導致檢定沒有多大意義。

關於小樣本取代卡方檢定的方法,同樣可以在《卡方檢定 ON THE CROSS:PEARSON, YATES, FISHER 與精確檢定》這篇文章當中找到更詳細的說明。

已退休的知名統計學教授兼教科書作者 Alan Agresti 建議,除了卡方檢定之外,也應該計算其他的指標,譬如勝算比( Odds Ratio )、風險係數( Risk Rate )等等以增加分析的內涵。

* DATA TRANSFORMATION的一些探討

* 維度縮減DIMENSION REDUCTION,通往線性代數的聖母峰 : 特徵值分解(EIGENVALUE DECOMPOSITION)、奇異值分解(SINGULAR VALUE DECOMPOSITION) 與主成份分析(PRINCIPAL COMPONENT ANALYSIS)

* 隨機性、大數法則與中央極限定理

* 統計R語言實作筆記系列 – 資料尺度與變數類型

* 統計R語言實作筆記系列 – 2D視覺化進階 GGPLOT()的基本架構(一)

* 數大有時不美的統計性質

(Visited 18,774 times, 195 visits today)

Wendell.Huang

科技公司嫌棄太活潑,消費品牌挑剔太沉悶…, 經常必須解釋自己在學什麼, 不小心就摔破對方眼鏡的業餘書呆子。