卡方分析是最常見的交叉表分析方法,皮爾森卡方檢定(Pearson's chi-squared test)是最著名的一種。卡方分析應用在自變數與應變數都是類別變數的時候。透過比較交叉表中每一個觀察值與期望值的差距,得出卡方統計量。由於統計值的機率分配近似卡方分配,所以稱為卡方檢定。
卡方統計量的公式是:
\[x^2=\displaystyle \sum_{_i=1}^{r}\displaystyle \sum_{_j=1}^{c}\frac{(O_{i,j}-E_{i,j})^2}{E_{i,j}}\]
\(O\)= Observer觀察值。
\(E\)= Expected value期望值。
\(\displaystyle \sum_{i=1}^{r}\), \(\displaystyle \sum_{i=1}^{c}\)= 加總列(r)與欄(c)觀察值與期望值的差異。
自由度:(r−1)(c−1)。
卡方分析
我們以第三剎車燈的例子,來實際應用卡方分析。
為了防止追撞車禍,美國雷根政府頒布法令,強制所有1986年以後生產的汽車,都必須加裝第三剎車燈(center high-mounted stop lamp)。其背後的原理在於,當後車駕駛已經習慣前車的後煞車燈,第三剎車燈可以提高後車駕駛的注意力,避免追撞事故發生。
第三剎車燈到底對降低追撞車禍肇事率有沒有幫助?聯邦政府交通部高公局曾在1998年發布一份名為The Long-Term Effectiveness of Center High Mounted Stop Lamps in Passenger Cars and Light Trucks報告。這份報告比較佛羅里達州第三剎車燈政策施行前後的肇事數據如下:
| Model Year | Rear Impacts | Others (Control Group) | 
|---|---|---|
| 1985 (without CHMSL) | 6,773 | 22,959 | 
| 1986 (CHMSL-equipped) | 7161 | 25,989 | 
相同的數據,利用table()與summary()進行卡方分析來檢測政策成效:
     > thirdlight_tab<-matrix(c(6773, 22959, 7161, 25989), ncol=2, byrow=TRUE) #建立矩陣
     > colnames(thirdlight_tab)<-c("Rear Impacts", "Others") #命名矩陣的欄
     > rownames(thirdlight_tab)<-c("1985 (without)", "1986 (equipped)") #命名矩陣的列
     > thirdlight_tab<-as.table(thirdlight_tab) #將矩陣轉換為交叉表
     > thirdlight_tab #輸出交叉表
                    Rear Impacts Others
     1985 (without)          6773  22959
     1986 (equipped)         7161  25989
     > summary(thirdlight_tab) #輸出卡方分析結果
     Number of cases in table: 62882
     Number of factors: 2
     Test for independence of all factors:
             Chisq = 12.618, df = 1, p-value = 0.0003821
    
   上述卡方分析的結果,卡方統計量為12.618,p值<.05,因此拒絕虛無假設,代表政策實施前後,第三剎車燈對於降低後方來車追撞的傷亡,確實有顯著差異。
除了summary()之外,chisq.test()也能進行卡方分析:
     > chisq.test(thirdlight_tab)
     
             Pearson's Chi-squared test with Yates' continuity correction
     
     data:  thirdlight_tab
     X-squared = 12.549, df = 1, p-value = 0.0003963
    
   期望值
卡方分析的原理是計算觀察值與期望值的差異。因此期望值的計算是決定卡方統計量的基礎。期望值可以透過手動計算來獲得。
     > addmargins(thirdlight_tab) #邊際加總
                     Rear Impacts Others   Sum
     1985 (without)          6773  22959 29732
     1986 (equipped)         7161  25989 33150
     Sum                    13934  48948 62882
    
   計算邊際加總後,可以一一計算每個儲存格的期望值。例如第一格儲存格的期望值為\(\frac{13934 \times 29732}{62882}=6588\),第二格的期望值為\(\frac{48948 \times 29732}{62882}=23144\)。以此類推,每個儲存格的期望值為:
| Model Year | Rear Impacts | Others (Control Group) | Sum | 
|---|---|---|---|
| 1985 (without) | 6773 (期望值6588) | 22959 (期望值23144) | 29732 | 
| 1986 (equipped) | 7161 (期望值7376) | 25989 (期望值25804) | 33150 | 
| Sum | 13934 | 48948 | 62882 | 
也可以透過chisq.test,更快速計算期望值:
     > chisq<-chisq.test(thirdlight_tab) #將卡方分析結果指定給chisq
     > round(chisq$expected) #計算期望值並四捨五入
                    Rear Impacts  Others
     1985 (without)          6588  23144
     1986 (equipped)         7346  25804
    
   有了期望值,就可以根據公式算出卡方統計量。
     > (((6773-6588)^2)/6588)+(((22959-23144)^2)/23144)+(((7161-7346)^2)/7346)+(((25989-25804)^2)/25804)
    
   第三剎車燈到底對降低追撞肇事率有沒有幫助?從卡方分析來看,政策實施前後,後車追撞肇事率有顯著降低。加裝第三剎車燈的汽車肇事率大約下降7%:
\[1-\frac{\tfrac{7161}{6773}}{\tfrac{25989}{22959}}=0.0659\]
雷根政府的這項政策,是現在所有汽車都有第三剎車燈的濫觴。但經過30多年後,其政策效果也出現質疑的聲音。越來越多的統計數據顯示,後車追撞的發生率及致死率都有逐年上升趨勢,令人不禁懷疑是不是駕駛人已經習慣第三剎車燈,而需要第四、第五剎車燈來提醒了呢?
 
  
   
   
   
  