ANOVA 做出了显著性?事儿还没完呢!| 协和八
写在前面 看了前几篇 ANOVA 的文章,面对新出炉的实验数据,不管要比较三组,四组还是 n 组数据,大家想必都已经胸有成竹,一个 ANOVA,通通搞定!
且慢,可别急着去玩耍,事儿还没完呢!
有一天你在研究饮食习惯对小鼠记忆里的影响,你找来了几笼小鼠并把它们随机分成了四组,分别喂巧克力,葡萄干,花生米和老干妈,持续一个星期之后进行记忆测试。分析数据时你毫不犹豫地选择了 ANOVA 比较不同组的小鼠的记忆力,并发现 p 值小于 0.05,你小心脏噗噗地跳着,激动地告诉老板说「食物真的会影响小鼠的记忆啊!」
老板看了看你的结果,露出了满意的笑容,又问道,你知不知道这四组里面哪两组不一样啊?
你挠了挠头,不知道该怎么回答,只好说,看平均值,老干妈组好像最高,葡萄干组最低,这两组应该不一样吧。
老板拍拍你的肩膀说,回去看一下今天的说人话的统计学,然后再跟我汇报!
下面让我们进入主题:在 ANOVA 呈现显著性之后,我们很自然就想知道究竟哪些组的均值不一样。
要回答这个问题,我们需要用到「事后检验」( post-hoc test )。
事后检验的方法有很多,其中 Tukey-Kramer(又叫做 Tukey HSD)检验是最常用的办法。它不仅给出 p 值,还能同时给出置信区间,方便判断效应大小,一举两得。
具体来讲,Tukey-Kramer 检验会对所有组进行两两比较。比如说,上面的例子里面根据喂食的食物小鼠有巧克力,葡萄干,花生米和老干妈四组,那么 Tukey-Kramer 检验共包括 6 次检验:巧克力对葡萄干,巧克力对花生米,巧克力对老干妈,葡萄干对花生米,葡萄干对老干妈,花生米对老干妈(不会看饿了吧~~)。
如果有五组数据比较,一共要进行几次检验?中学学过的排列组合派上用场了,答案是 5*4/2=10 次。 有了这个概念,我们至少能预期 Tukey-Kramer 结果包含多少项,防止数据输入有遗漏。
我们前面讲过,ANOVA 的原假设是所有组的平均值相等。在这个原假设下面,所有组的平均值应该围绕着一个共同的值上下波动。在对任意两组数据进行比较时,如果这两组数据的平均值差别很大,那么则不太有可能这两组数据来自同一平均值。
问题是平均值的差别要多大我们才可以认为两组数据具有显著差异呢?我们可以考虑最极端的情况,也就是比较平均值最大和最小的两组数据,如果我们找到一个阈值,使得仅仅以数据抽样的随机性而导致平均值最大和最小的两组数据的差距超过这个阈值的概率很小,那么其它组的平均值差距高于这个阈值的概率只会更小。当两组数据的平均值差距大于这个阈值时,我们就可以比较放心的认为这两组数据有显著不同。
按照这个思路,我们可以试着把平均值最大和最小的两组数据的平均值差距 R 当成一个统计检验量,假如我们能推导出 R 的分布,就能按照和 t 检验类似的思路找出一个阈值使得只要两组数据的平均值差别大于这个阈值的概率小于 0.05,当两组数据的平均值差距大于这个概率时,就判定有显著性差异。
统计学里面正好有一个分布就是描述来自同一正态分布的多组数据的平均值最大和最小的两组的差距,叫做学生范围分布( Studentized range distribution )。Tukey-Kramer 检验是正是根据学生范围分布提出来的。
学生范围分布的具体表达式比较复杂,这里先不深入介绍,但是我们可以定性地猜测出它由哪些因素决定。先自己动动脑筋想想看,看自己猜对了几个?想不出也可以回忆一下之前学 t 检验的过程找下灵感。
❖最容易想到的因素是数据样本 N 的大小。如果每个组包含的样本量大了,组的平均值波动就小了,那么组间平均值的差别就会变小,这样组间平均值大于某一特定阈值的概率就会比较小,从而导致获得统计显著性的组间平均值差距的阈值就会比较小。
❖另外一个容易想到的影响学生范围分布的重要因素就是数据本身的波动性了(方差)。在原假设即所有组平均值想等的前提下,方差可以用 ANOVA 检验要用到的组内平方和除以样本量(也叫做 MSE,均方误差)来估计。如果均方误差大了,那么每个组的平均值波动范围也会大,两组平均值差距得超过比较高的阈值才能认为具有统计显著性。
❖最后一个因素是组的数量 k ,这是咱们以前学 t 检验的时候不用考虑的,毕竟都是一组或两组数据的比较。当每组的数据都来自于同一正态分布时,组的数量越多,越有可能出现比较极端的值,那么最大值与最小值的差别会越大,就像我们常说的林子大了什么鸟都有,这时想要有统计显著性的阈值会变高。
总结一下上面的内容,Tukey-Kramer检验依据的是最大组与最小组平均值差距的分布,这个分布由组数,数据样本的大小,样本平均方差决定。根据这个分布,给定事前选定的显著性水平α(一般为 0.05 ),我们可以计算出一个阈值,只要被比较的两组数据的平均值差距大于这个阈值,就认为这两组数据的差异不太可能是由于数据的随机波动导致的,从而认为由显著差异。
这一阈值的具体公式是:
上面公式里的第一项
这里涉及的阈值是根据最大值组与最小值组的差距的分布推导出的,如果我们是比较第二和第三大的组的平均值该怎么办?Tukey-Kramer 检验还是使用相同的阈值计算方法。我们知道中间的组的平均值差距肯定小于最大与最小组平均值的差距,从这里可以看出Tukey-Kramer检验对于判定两组数据是否显著不同是比较保守的,这样就大大减少了出现假阳性的概率,避免了多重检验里面假阳性的问题(可回顾《要比较三组数据,t 检验还能用吗?》)。正如我们以前说过的,这样做的缺点是损失了一些统计功效。
❓既然 Tukey-Kramer 检验已经考虑到了多重检验的问题,我们没有理由非得在 ANOVA 呈显著性之后才能用 Tukey-Kramer 检验啊?能不能不做 ANOVA 直接使用 Tukey-Kramer 检验呢?其实是可以的。
❓那就直接用 Tukey-Kramer 检验,这样可以直接知道哪两组数据不一样,还要学 ANOVA 干嘛?
其实有了大炮还是要枪的,因为应用的场景不完全一样。比如我们研究学历对收入有没有影响的时候,我们首要关心高中,本科,硕士,博士有没有区别,然后才关心具体到底是本科与高中毕业有显著差异还是研究生与本科毕业有显著差异,在这种情况先做 ANOVA 回答主要问题,再用 Tukey-Kramer 检验回答一下次要问题就顺理成章。
❓那会不会出现先用 ANOVA 发现有显著性,但是用 Tukey-Kramer 检验却发现所有组之间都没有统计显著性?
答案是会的,因为 ANOVA 的统计功效比 Tukey-Kramer 要强。前面分析 Tukey-Kramer 检验的时候提到它为了控制假阳性其实是损失了一些统计功效的。这也是往往大家分析数据会先做一个 ANOVA 的原因。
❓设想下面一种情况,你的实验设计包括了喂食巧克力,葡萄干,花生米和老干妈四组小鼠,做了 Tukey-Kramer 检验发现老干妈和葡萄干组有显著差异。由于检验只输出来三个组对比的结果而不是六个,你意识到输入数据的时候忘了输入花生米组的数据,等你把花生米的数据输入之后,突然发现老干妈和葡萄干组不再有显著差异了。这现象从统计学的角度有可能发生吗?
其实是有可能的,因为组的数量变多了,最大组和最小组差距的分布会变,导致获得显著性所需要的两组数据平均值差距的阈值提高,因为阈值公式里的
这就是说,考虑到统计上面多重比较发现假阳性的风险,我们做实验的时候也不是尝试的条件越多越好,当我们包括了很多没有意义的条件的时候,我们不仅付出时间和实验材料的成本,更容易使得真正的发现淹没在噪声之中,难以呈现统计显著性,吃力不讨好。
事后检验不仅仅只有 Tukey-Kramer 检验这一个选择。
在生物医学研究中,实验常常会包括一个对照组,比如试验药物有没有疗效的时候常常用安慰剂作为对照组。我们往往首先关心的是哪些测试药物与对照组比有显著不同,不同药物之间的不同可能是下一步才要研究的问题。
在这种情况下,用 Dunnett 检验往往比 Tukey-Kramer 检验更有统计功效。当我们有四组数据时,Dunnett 检验只要做三次比较(三组数据分别与对照组比较),而 Tukey-Kramer 检验要比较六次,所以 Dunnett 检验为修正假阳性「牺牲」的统计功效更少。
精选每日一题
更多精选题可回顾历史推送文末
男,29 岁。急性化脓性阑尾炎 7 天,非手术治疗,突发高热、寒战,右季肋区疼痛。查体:T 38.5℃,皮肤巩膜轻度黄染,右季肋区叩痛。实验室检查:ALT、AST、总胆红素均轻度升高。腹部超声提示肝脏可见数个液性暗区。
题目来源:临床执业医师资格考试往届真题
本期主播:铩羽
回复「统计学」可查看「说人话的统计学」系列合辑,
或点击下方标题可阅读本系列任意文章
>>> 干货 <<<
>>> 自检 <<<
>>> 番外篇 <<<
作者:田菊
编辑:黑草乌叶