非参数检验:Wilcoxon检验

引言

Wilcoxon检验(也被称为Mann-Withney-Wilcoxon检验)是一种非参数检验,意味着它不依赖于属于任何特定参数的概率分布家族的数据。非参数检验的目标与参数检验的目标相同。然而,它们比参数检验有一个优势:它们不需要假设分布的正态性。例如,学生t检验只有在数据是高斯的或样本量足够大(通常n≥30)时才适用。在其他情况下,应该使用非参数检验。

有人可能会问,为什么我们不总是使用非参数检验,这样我们就不必为检验正态性而烦恼。原因是,当正态性假设成立时,非参数检验通常不如相应的参数检验有力。因此,在其他条件相同的情况下,如果数据遵循正态分布,使用非参数检验,当无效假设为假时,你拒绝无效假设的可能性就会降低。因此,在满足假设的情况下,最好使用统计检验的参数化版本。

我们将介绍Wilcoxon检验的两种情况,以及如何通过两个例子在R中执行它们。

采用Wilcoxon检验比较两组是否存在显著性差异。要比较的两组是:

  • 独立样本
  • 非独立样本

独立样本

对于独立样本的Wilcoxon检验,假设我们想测试女性和男性学生在统计学考试中的成绩是否不同。

我们收集了24名学生的成绩(12名女生,12名男生):

#rep("Girl",12)为把字符“Girl”重复12次
dat <- data.frame(
  Sex = as.factor(c(rep("Girl", 12), rep("Boy", 12))),
  Grade = c(
    19, 18, 9, 17, 8, 7, 16, 19, 20, 9, 11, 18,
    16, 5, 15, 2, 14, 15, 4, 7, 15, 6, 7, 14
  )
)
dat
image.png

按照性别划分的成绩分布:

library(ggplot2)
ggplot(dat) +
  aes(x = Sex, y = Grade) +
  geom_boxplot(fill = "#0c4c8a") +
  theme_minimal()
按照性别的数据分布

女孩成绩的频率分布:

hist(subset(dat, Sex == "Girl")$Grade,
  main = "Grades for girls",
  xlab = "Grades"
)
女孩成绩的频率分布

男孩成绩的频率分布:

hist(subset(dat, Sex == "Boy")$Grade,
  main = "Grades for boys",
  xlab = "Grades"
)
男孩成绩的频率分布

从上面两张图可以看出,两个都不服从正态分布这个限制条件。

直方图显示两种分布似乎都不符合正态分布,Shapiro-Wilk检验的p值证实了这一点(如果P值显著,那么拒绝正态分布假设,数据不符合正态分布)。

shapiro.test(subset(dat, Sex == "Girl")$Grade)
shapiro.test(subset(dat, Sex == "Boy")$Grade)
image.png

下面就可以践行wilcox检验了:
H0: 两组是相似的
H1: 两组是不同的

test <- wilcox.test(dat$Grade ~ dat$Sex)
test

test <- wilcox.test(dat$Grade ~ dat$Sex,
  alternative = "less"
)
test
wilcox检验结果

P值为0.021,因此,在5%显著性水平下,我们拒绝原假设,并得出结论:女生和男生的成绩存在显著差异。考虑到上面展示的按性别划分的分数箱形图,你可能会发现女孩似乎比男孩表现得更好。可以通过添加alternative = "less"。P值是0.01。因此,在5%显著性水平下,我们拒绝原假设,并得出男孩表现明显低于女孩的结论(这相当于得出女孩表现明显优于男孩的结论)。

非独立样本

对于第二种情况,考虑我们在学期初对一个有12名学生的班级进行了一次数学测试,并在学期末对完全相同的学生进行了一次类似测试。我们有以下数据:

dat <- data.frame(
  Beginning = c(16, 5, 15, 2, 14, 15, 4, 7, 15, 6, 7, 14),
  End = c(19, 18, 9, 17, 8, 7, 16, 19, 20, 9, 11, 18)
)
#将数据转换为对其的格式
dat2 <- data.frame(
  Time = c(rep("Before", 12), rep("After", 12)),
  Grade = c(dat$Beginning, dat$End)
)
dat2
数据样式

学期初和学期后的成绩分布:

# Reordering dat2$Time
dat2$Time <- factor(dat2$Time,
  levels = c("Before", "After")
)
ggplot(dat2) +
  aes(x = Time, y = Grade) +
  geom_boxplot(fill = "#0c4c8a") +
  theme_minimal()
学期前后的成绩分布

在这个例子中,很明显两个样本不是独立的,因为同样的12名学生在学期前后参加了考试。同时假设正态性假设被违背,我们因此使用配对样本的Wilcoxon检验。
这个测试的R代码与独立样本相似,我们在wilcox.test()函数中添加了paired = TRUE参数,以考虑两个样本之间的依赖关系:

test <- wilcox.test(dat2$Grade ~ dat2$Time,
  paired = TRUE)
test
检验结果

P值为0.169。因此,在5%显著性水平下,我们不拒绝学期前后成绩相似的原假设。

我希望这篇文章能够帮助您使用Wilcoxon检验来比较两个不遵循R正态分布的组。如果您需要执行参数版本的Wilcoxon检验,请参阅Student的t检验。

正态性假设可以通过3种互补的方法进行检验:(i)直方图,(ii) QQ-plot和(iii)正态性检验(最常见的是Shapiro-Wilk test)。

注意,为了使用t检验(Wilcoxon检验的参数化版本),需要两个样本服从正态分布。因此,即使一个样本服从正态分布(而另一个不服从正态分布),也建议使用非参数检验

注意,相等元素(tie)的存在阻止了精确的p值计算

我们添加alternative = "less"(alternative = "greater"),因为我们想测试男孩的分数比女孩的分数低。使用“少”或“多”可以从数据集的参考水平中扣除

学习网址:Wilcoxon test in R: how to compare 2 groups under the non-normality assumption | R-bloggers
本文内容从上述网址翻译和学习而形成

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,826评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,968评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,234评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,562评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,611评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,482评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,271评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,166评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,608评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,814评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,926评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,644评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,249评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,866评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,991评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,063评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,871评论 2 354

推荐阅读更多精彩内容