比較兩組比例 (Comparing Two-Proportions)

套路31: 比較兩組比例 (Comparing Two-Proportions)

1. 使用時機: 用於比較觀測到的兩組比例(proportion),兩組二分變量(dichotomous variables)分析二分變量是結果只有兩種的事件。
2. 分析類型: 母數分析(parametric analysis)直接使用資料數值算統計叫parametric方法,把資料排序之後用排序的名次算統計叫non-parametric方法。
3. 前提假設: 無。
4. 資料範例: 咪路調查兩個養雞場的蛋雞感染沙門氏菌的比例,資料如下:

養雞場1
養雞場2
加總
有沙門氏菌
18
10
28
沒沙門氏菌
6
15
21
加總
24
25
49
試問兩個養雞場的蛋雞感染沙門氏菌的比例是否有差異?
H0: p1 = p2HA: p1p2

5. 使用R比較兩組比例方法一:
第一步: 閱讀基本模組(base)stats程式套件的prop.test函數的說明書。
  help(prop.test)
第二步: 使用stats程式套件的prop.test函數代入資料數值。
  prop.test(x = c(18, 10), n = c(24, 25), alternative = "two.sided", conf.level = 0.95)
  # c(18, 10)c(24, 25)是觀測數據,亦即觀測到的比例是18/2410/25
  # alternative = "two.sided"執行雙尾檢定,H0: p1 = p2
  # 如果要檢定: H0: p1p2 & HA: p1 < p2H0: p1 > p2 & HA: p1 p2alternative = "less"
  # 如果要檢定: H0: p1p2 & HA: p1 > p2H0: p1 < p2 & HA: p1 p2alternative = "greater"
第三步: 判讀結果
        2-sample test for equality of proportions with continuity correction
data:  c(18, 10) out of c(24, 25)
X-squared = 4.7792, df = 1, p-value = 0.02881    # p-value < 0.05H0: p1 = p2不成立。
alternative hypothesis: two.sided
95 percent confidence interval:
 0.05053681 0.64946319
sample estimates:
prop 1 prop 2
  0.75   0.40
  # p-value < 0.05H0: p1 = p2不成立。
  # p-value > 0.05H0: p1 = p2成立。

6. 使用R比較兩組比例方法二:
第一步: 有人在網路上提供下列程式可計算兩組比例Z檢定。(https://www.r-bloggers.com/comparison-of-two-proportions-parametric-z-test-and-non-parametric-chi-squared-methods/) 將程式碼全部複製貼入R視窗。這時R視窗裡就有這個使用者自定函數(user defined function)。視窗關閉後函數(程式碼)會消失。要使用要再複製貼入一次。
z.prop = function(x1,x2,n1,n2){
  numerator = (x1/n1) - (x2/n2)
  p.common = (x1+x2) / (n1+n2)
  denominator = sqrt(p.common * (1-p.common) * (1/n1 + 1/n2))
  z.prop.ris = numerator / denominator
      return(z.prop.ris)
}
第二步: 呼叫上述程式的函數z.prop代入資料數值。
  z.prop(18, 10, 24, 25)
  # 18, 10, 24, 25是觀測數據,亦即觀測到的比例是18/2410/25
第三步: 判讀結果
[1] 2.474874   # 此程式只計算z值。
  # -1.96 > z z > 1.96H0: p1 = p2,不成立。
  # -1.96 < z < 1.96H0: p1 = p2成立。
  # 此程式未提供p值。

7. 同一資料也可以使用卡方獨立檢定:
H0: 養雞場與蛋雞感染沙門氏菌無關。
HA: 養雞場雨蛋雞感染沙門氏菌有關。
第一步: 閱讀基本模組(base)stats程式套件的chisq.test函數的說明書。
  help(chisq.test)
第二步: 輸入建立資料
  v1 <- c(18, 10)
  v2 <- c(6, 15)
  m <- matrix(cbind(c(v1, v2)), nrow = 2, byrow = TRUE)
  # 將兩組vector組合成2 x 2矩陣,儲存到變數m
  m
  # 顯示矩陣內容確保數值排列方式如資料表格所示。
第三步: 使用stats程式套件的chisq.test函數代入m
  chisq.test(m, correct = TRUE, simulate.p.value = TRUE, B = 2000)
  # correct = TRUE 2 x 2列聯表(degree of freedom = 1)時需做葉慈修正(Yates' correction)
  # simulate.p.value = TRUE, B = 2000估計p值。
第四步: 判讀結果
           Pearson's Chi-squared test with simulated p-value (based on 2000 replicates)
data:  m
X-squared = 6.125, df = NA, p-value = 0.02349
  # p-value < 0.05養雞場與蛋雞感染沙門氏菌無關不成立。
  # p-value > 0.05養雞場與蛋雞感染沙門氏菌無關成立。

來勁了嗎? 想知道更多?? 補充資料(連結):
6. 關於R基礎R繪圖及統計快速入門:
   b. Cookbook for R: http://www.cookbook-r.com/
   d. Statistical tools for high-throughput data analysis (STHDA): http://www.sthda.com/english/
e. The Handbook of Biological Statistics: http://www.biostathandbook.com/
f. An R Companion for the Handbook of Biological Statistics: http://rcompanion.org/rcompanion/index.html
7. Zar, JH. 2010. Biostatistical Analysis, Fifth Edition, Pearson.

留言

這個網誌中的熱門文章

統計不球人 目錄 (Table of Contents)

如何選擇統計方法 1

如何檢查資料是否接近常態分布 (Normality Test using R)