如何获得显着的整体方差分析,但与 Tukey 的程序没有显着的成对差异?

机器算法验证 方差分析 事后 tukey-hsd-测试
2022-02-13 03:25:59

我用 R an ANOVA 进行了测试,我得到了显着的差异。然而,当使用 Tukey 的程序检查哪些对显着不同时,我没有得到任何一个。这怎么可能?

这是代码:

fit5_snow<- lm(Response ~ Stimulus, data=audio_snow)
anova(fit5_snow)

> anova(fit5_snow)
Analysis of Variance Table

Response: Response
          Df Sum Sq Mean Sq F value  Pr(>F)  
Stimulus   5  73.79 14.7578  2.6308 0.02929 *
Residuals 84 471.20  5.6095                  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 

df<-df.residual(fit5_snow)
MSerror<-deviance(fit5_snow)/df

comparison <-  HSD.test(audio_snow$Response, audio_snow$Stimulus, df, MSerror, group=FALSE)

> comparison <-  HSD.test(audio_snow$Response, audio_snow$Stimulus, df, MSerror, group=FALSE)

Study:

HSD Test for audio_snow$Response 

Mean Square Error:  5.609524 

audio_snow$Stimulus,  means

                audio_snow.Response   std.err replication
snow_dry_leaves            4.933333 0.6208034          15
snow_gravel                6.866667 0.5679258          15
snow_metal                 6.333333 0.5662463          15
snow_sand                  6.733333 0.5114561          15
snow_snow                  7.333333 0.5989409          15
snow_wood                  5.066667 0.7713110          15

alpha: 0.05 ; Df Error: 84 
Critical Value of Studentized Range: 4.124617 

Comparison between treatments means

                              Difference   pvalue sig        LCL      UCL
snow_gravel - snow_dry_leaves  1.9333333 0.232848     -0.5889913 4.455658
snow_metal - snow_dry_leaves   1.4000000 0.588616     -1.1223246 3.922325
snow_sand - snow_dry_leaves    1.8000000 0.307012     -0.7223246 4.322325
snow_snow - snow_dry_leaves    2.4000000 0.071587   . -0.1223246 4.922325
snow_wood - snow_dry_leaves    0.1333333 0.999987     -2.3889913 2.655658
snow_gravel - snow_metal       0.5333333 0.989528     -1.9889913 3.055658
snow_gravel - snow_sand        0.1333333 0.999987     -2.3889913 2.655658
snow_snow - snow_gravel        0.4666667 0.994348     -2.0556579 2.988991
snow_gravel - snow_wood        1.8000000 0.307012     -0.7223246 4.322325
snow_sand - snow_metal         0.4000000 0.997266     -2.1223246 2.922325
snow_snow - snow_metal         1.0000000 0.855987     -1.5223246 3.522325
snow_metal - snow_wood         1.2666667 0.687424     -1.2556579 3.788991
snow_snow - snow_sand          0.6000000 0.982179     -1.9223246 3.122325
snow_sand - snow_wood          1.6666667 0.393171     -0.8556579 4.188991
snow_snow - snow_wood          2.2666667 0.103505     -0.2556579 4.788991
3个回答

这主要是由于 ANOVA 的敏感性(大于成对测试的敏感性)。然后,当成对检验几乎无法区分成对的均值时,ANOVA 检测到均值附近的较低变异性。分析必须关注差异,您可以更灵活地进行事后分析,记住您刚刚遇到均值存在差异。记得检查方差分析假设。

另一方面,有一些关于在不使用方差分析的情况下使用成对测试的主题:我们是否需要在事后测试之前进行全局测试?

为什么不可能?

整体测试和成对测试提出不同的问题,因此他们可以获得不同的答案。

以下是重复问题R Tukey HSD Anova 的答案副本:Anova 显着,Tukey 不是?

由于此答案在此处不可见,并且没有明确的链接,因此我创建了此副本。


F 检验和 Tukey HSD 检验的 p 值之间的关系不是一对一的。(即使两者都间接测试均值μ1=μ2=μ3

这是因为,对于最小和最大均值之间的给定距离(在 Tukey 的 HSD 测试中定义最小 p 值),组间方差(在 ANOVA 中定义 p 值)仍然取决于中间均值的位置. 当三组中的两组在一端聚集在一起时,组间方差最大,而不是当三组平均分布时。

例如:平均值 0、0.5 和 1 的组间方差小于平均值 0、1 和 1。但最大距离(外部组之间)是相同的。这意味着 Tukey HSD 测试中的最小 p 值对于这两种情况不会不同,而 ANOVA p 值确实不同。

因此,对于具有 5% 最大显着差异的实验,您不会获得 5% 最大的 F 分数(反之亦然)。这取决于组的分布,Tukey 检验中刚好高于 5% 的两个小 p 值可以进行 p 值低于 5% 的 F 检验。(当你有更多的组时,这会变得更加强大)


下图是根据标准正态分布对三组尺寸为 50 的 1000 次抽签模拟得出的。

它比较

  • Tukey HSD 测试的标准(在 x 轴和 y 轴上显示最小和第二小的 p 值,两条垂直线分别位于 0.05 和 0.1)
  • 使用 F 检验的标准(红点的 p 值低于 0.05,绿点的 p 值高于 0.05 且低于 0.1,黑点的 p 值高于 0.1)。 将 Tukey 检验与 F 检验进行比较

F 检验的 p 值与 Tukey HSD 检验的最小 p 值不一致。F 检验的 p 值可以高于或低于 Tukey HSD 检验中最低 p 值的 p 值,具体取决于 Tukey HSD 检验中的其他 p 值(这类似于前面提到的组均值的聚类分布和组均值的均匀分布之间的差异)。

请注意,Tukey HSD 检验(最低 p 值)和 F 检验都拒绝了 1000 个模拟实验中不同部分的相关假设,但这些部分的大小是相等的,并且都对应于相同的 I 型错误率。