單因子多樣本中位數差異檢定 (Kruskal-Wallis test)

套路21: 單因子多樣本中位數差異檢定 (Kruskal-Wallis test)

變異數分析適用連續資料之差異分析,若自變項有一個,就是單因子變異數分析。多樣本中位數差異檢定是對應單因子變異數分析的無母數分析方法。當數據不符合單因子變異數分析的前提假設(相同變異數,數據為常態分布)時,可選擇多樣本中位數差異檢定來做為替代分析方法**注意** ”比較變異數” (comparing variances)變異數分析” (analysis of variance)不同。變異數分析是多組資料比較平均值或中位數。統計假設檢定檢定什麼?H0。例如多組獨立樣本假設檢定H0 : k組樣本中位數相同,HA : 至少有一組中位數不同是檢定多組資料的中位數是否相同。假設相等時為雙尾 (two-tailed test) 檢定。

1. 使用時機: 用於比較多組樣本中位數(median)
2. 分析類型: 無母數分析(non-parametric analysis)直接使用資料數值算統計叫parametric方法,把資料排序之後用排序的名次算統計叫non-parametric方法。
3. 假設前提: 無。
4. 範例資料: 咪路調查餵食不同飼料的肉雞體重(g)資料如下:
飼料1
飼料2
飼料3
飼料4
61.8
78.8
70.5
60.3
65.1
79.5
72.6
63.8
61.7
76.0
71.7
64.1
63.3
73.4
72.0
61.4

77.3
71.1
60.9
不同飼料是否效果不同?H0: 餵食不同飼料的肉雞體重(中位數)相同。 HA: 餵食不同飼料的肉雞體重(中位數)不完全相同。

第一步: 使用基本模組(base)read.table函數輸入建立資料儲存到變數m
m <- read.table(header = TRUE, text = "
Feed Weight
F1 61.8
F1 65.1
F1 61.7
F1 63.3
F2 78.8
F2 79.5
F2 76.0
F2 73.4
F2 77.3
F3 70.5
F3 72.6
F3 71.7
F3 72.0
F3 71.1
F4 60.3
F4 63.8
F4 64.1
F4 61.4
F4 60.9")  # 資料間以空白間隔,F1-F4: 餵食不同飼料。
attach(m)  # 告知R使用資料m
names(m)  # 指定資料標題。

5. 畫圖看資料分佈:
第一步: 安裝ggplot2程式套件。
第二步: 呼叫ggplot2程式套件備用。
  library(ggplot2)
第三步: 使用函數ggplot代入m資料畫box圖。
  ggplot(m, aes(x = Feed, y = Weight)) +
    geom_boxplot(color = "red") +
     geom_jitter(position = position_jitter(0.05))  # box
6. 計算多樣本中位數差異檢定:
第一步: 使用基本模組(base)kruskal.test函數代入m中資料來計算多樣本中位數差異檢定
  kruskal.test(Weight ~ Feed, data = m)
第二步: 判讀結果。
        Kruskal-Wallis rank sum test
data:  Weight by Feed
Kruskal-Wallis chi-squared = 15.701, df = 3, p-value = 0.001306
  # p < 0.05餵食不同飼料的肉雞體重(中位數)相同,不成立。
  # p > 0.05餵食不同飼料的肉雞體重(中位數)相同,成立。

7. H0不成立時需計算多重比較(multiple comparison)來顯示有差異的組別:
第一步: 閱讀基本模組(base)pairwise.wilcox.test函數使用說明。
  help(pairwise.wilcox.test)
第二步: 使用基本模組(base)pairwise.wilcox.test函數代入WeightFeed來找出有差異的組
  pairwise.wilcox.test(Weight, Feed, p.adjust.method = "bonferroni")
  # p.adjust.method = "bonferroni"修正p值的方法。
  # 使用help(p.adjust)可顯示修正p值的方法說明。
第三步: 判讀結果。
            Pairwise comparisons using Wilcoxon rank sum test
    data:  Weight and Feed
        F1    F2    F3  
    F2 0.095 -     -   
    F3 0.095 0.048 -   
    F4 1.000 0.048 0.048
P value adjustment method: bonferroni
  # p < 0.05是中位數有差異的組別。

來勁了嗎? 想知道更多?? 補充資料(連結):
1. 關於Nonparametric statistics (https://en.wikipedia.org/wiki/Nonparametric_statistics)
3. 關於Kruskal–Wallis one-way analysis of variance (https://en.wikipedia.org/wiki/Kruskal%E2%80%93Wallis_one-way_analysis_of_variance)
4. 關於Multiple comparisons problem (https://en.wikipedia.org/wiki/Multiple_comparisons_problem)
5. 關於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
6. Zar, JH. 2010. Biostatistical Analysis, Fifth Edition, Pearson.

留言

這個網誌中的熱門文章

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

如何選擇統計方法 1