探索组间差异利器:Tukey 检验 【Tukey Test】

探索组间差异利器:Tukey 检验 【Tukey Test】本文介绍了在 R 语言中使用 Tukey 检验进行多组比较的方法 包括如何执行 TukeyHSD 函数 解读图表结果以及其在统计分析中的应用和优缺点

大家好,欢迎来到IT知识分享网。

前言

Tukey Test in R

    背景不再赘述,例子是最好的解释,简而言之,在R语言中,multcompView 包通过 TukeyHSD()函数实现了 Tukey 检验。它还提供了一个图表,显示每个组合的均值差异情况:

# 加载工具 library(multcompView) # 创建随机数据 set.seed(1) treatment <- rep(c("A", "B", "C", "D", "E"), each=20) value <- c( sample(2:5, 20 , replace=T) , sample(6:10, 20 , replace=T), sample(1:7, 20 , replace=T), sample(3:10, 20 , replace=T) , sample(10:20, 20 , replace=T) ) data <- data.frame(treatment,value) # treat对value的影响 model <- lm( data$value ~ data$treatment ) # 先做个ANOVA ANOVA <- aov(model) # 用 Tukey test 研究每对 treat 和 value TUKEY <- TukeyHSD(x=ANOVA, 'data$treatment', conf.level=0.95) # 可视化(下图) plot(TUKEY , las=1 , col="brown") 

在这里插入图片描述

图怎么看?

    注意看!图中有代表不同配对分组的 “横线” ,和一个在本坐标系中,值为 0 的竖直虚线,若代表配对儿分组的横线和虚线相交,那么,则认为分组中成分的均值没有差异,就是A和C、B和D均值没差异。(反正我是大概理解了……)

使用Boxplot(箱线图)展示 Tukey test 结果

# 把没有区别的组合放在一起 generate_label_df <- function(TUKEY, variable){ 
    # Extract labels and factor levels from Tukey post-hoc  Tukey.levels <- TUKEY[[variable]][,4] Tukey.labels <- data.frame(multcompLetters(Tukey.levels)['Letters']) #I need to put the labels in the same order as in the boxplot : Tukey.labels$treatment=rownames(Tukey.labels) Tukey.labels=Tukey.labels[order(Tukey.labels$treatment) , ] return(Tukey.labels) } LABELS <- generate_label_df(TUKEY , "data$treatment") # 每一组用相同的颜色 my_colors <- c( rgb(143,199,74,maxColorValue = 255), rgb(242,104,34,maxColorValue = 255), rgb(111,145,202,maxColorValue = 255) ) # 一个基本箱线图 a <- boxplot(data$value ~ data$treatment , ylim=c(min(data$value) , 1.1*max(data$value)) , col=my_colors[as.numeric(LABELS[,1])] , ylab="value" , main="") # 在每个box上边添加字母 over <- 0.1*max( a$stats[nrow(a$stats),] ) text( c(1:nlevels(data$treatment)) , a$stats[nrow(a$stats),]+over , LABELS[,1] , col=my_colors[as.numeric(LABELS[,1])] ) 

PS: Tukey test 也被称为 Tukey’s range test / Tukey method / Tukey’s honest significance test / Tukey’s HSD test / Tukey-Kramer method……名字有点多

简单实现步骤总结以及优缺点

实现:

Tukey检验的步骤如下:

  • 执行方差分析(ANOVA)以确定组别间是否存在显著差异。
  • 计算每个组别之间的平均差异(mean difference)。
  • 使用Tukey公式计算一个名为Q统计量(Q statistic)的值。
  • 将Q统计量与Tukey查表中的临界值进行比较,以确定哪些组别之间存在显著差异。通过执行Tukey检验,我们可以识别出具有不同均值的组别,并确定这些差异是否因随机变异而产生。
优点:
  • Tukey检验允许进行多个组别之间的多重比较,使得在相同实验中同时比较多个组别成为可能。
  • 它提供了简单的结果解释,可以指出哪些组别之间存在显著差异。
  • 与其他多重比较方法相比,Tukey检验的错误控制较为保守,减少了误报显著性差异的可能性。
缺点:
  • 在样本量较小的情况下,Tukey检验可能会产生较低的统计功效,即可能无法检测到真实存在的差异。
  • 当组别之间的方差不均匀或相关时,Tukey检验的假设可能不成立,导致结果的解释存在限制。
  • Tukey检验是基于均值差异的比较方法,对于其他统计指标(如中位数)可能不适用。

总之

    Tukey检验是一种强大的多重比较方法,可以在实验设计和数据分析中揭示组别间的显著差异。然而,在应用时需要注意其适用性和局限性,并结合实际研究情况进行解释和判断。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/131659.html

(0)
上一篇 2025-08-06 15:26
下一篇 2025-08-06 15:33

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信