三、Kurskal-Wallis检验
- Kurskal-Wallis检验是Wilcoxon方法(其实是Mann-Whitney检验)用于多于两个样本的时候的升级版。当对两个样本进行比较的时候,Kurskal-Wallis检验与Mann-Whitney检验是等价的。
- 使用 Kruskal-Wallis 检验 可以确定两个或多个组的中位数是否存在差异。您的数据必须有一个类别因子和一个连续响应,所有组的数据分布都必须具有相似的分布形状。
例8-5 用三种药物杀灭钉螺,每批用200只活钉螺,用药后清点每批钉螺的死亡数、再计算死亡率(%),结果见表8-9。问三种药物杀灭钉螺的效果有无差别?
# 源代码:
drug <-rep(c("甲药","乙药","丙药"),each=5)
data <- c(32.5,35.5,40.5,46,49,16,20.5,22.5,29,36,6.5,9.0,12.5,18,24)
data85 <- data.frame(drug,data)
kruskal.test(data85$data~data85$drug)
# 运行结果:
> kruskal.test(data85$data~data85$drug)
Kruskal-Wallis rank sum test
data: data85$data by data85$drug
Kruskal-Wallis chi-squared = 9.74, df = 2, p-value = 0.007673
例8-6 比较小白鼠接种三种不同菌型伤寒杆菌9D、11C和DSC1后存活日数,结果见表8-10。问小白鼠接种三种不同菌型伤寒杆菌的存活日数有无差别?
# 源代码:
mice <- as.factor(c(rep("9D",10),rep("11C",9),rep("DSC1",11)))
data86 <- c(2,2,2,3,4,4,4,5,7,7,5,5,6,6,6,7,8,10,12,3,5,6,6,6,7,7,9,10,11,11)
data86 <- data.frame(mice,data)
kruskal.test(data86$data~data86$mice)
# 运行结果:
> kruskal.test(data86$data~data86$mice)
Kruskal-Wallis rank sum test
data: data86$data by data86$mice
Kruskal-Wallis chi-squared = 9.9405, df = 2, p-value = 0.006941
网友评论