R による Kruskal-Wallis test と ANOVA

kruskal.test() コマンドで Kruskal-Wallis test を行う。また、oneway.test() コマンドで one-way ANOVA (一元配置分散分析)を行う。

通常は Excel 等で作成した CSV ファイルを R に読み込んで分析する。しかし、ここでは便宜的に以下の簡単なデータフレームを作成し、data という変数に格納しておく。

data = data.frame(デバイス = c("デバイス A","デバイス B","デバイス A","デバイス A","デバイス C","デバイス C","デバイス B","デバイス C","デバイス A","デバイス A"), 出血量 = c(30,20,5,5,100,80,10,60,10,25))

data の内容を確認する。

data

デバイスによって出血量に偏りがあるかどうかを kruskal.test() コマンド、oneway.test() コマンドで検定する。

kruskal.test(出血量 ~ デバイス, data = data) #Kruskal-Wallis test
oneway.test(出血量 ~ デバイス, data = data) #one-way ANOVA (Welch 拡張)
oneway.test(出血量 ~ デバイス, data = data, var = T) #通常の one-way ANOVA

aov() コマンドや、anova() コマンドでも one-way ANOVA の計算ができる。

summary(aov(出血量 ~ デバイス, data = data))
anova(lm(出血量 ~ デバイス, data = data))