多重比较-Bonferroni法和Benjamini & Hochberg法

本次笔记主要介绍多重比较下两种常用的矫正P值的方法:Bonferroni法和Benjamini & Hochberg法(BH法)

多重比较问题

假设检验的基本原理是小概率原理,即我们认为小概率事件在一次试验中实际上不可能发生。当同一研究问题下进行多次假设检验时,不再符合小概率原理所说的“一次试验”。如果在该研究问题下只要有检验是阳性的,就对该问题下阳性结论的话,对该问题的检验的犯一类错误的概率就会增大。如果同一问题下进行n次检验,每次的检验水准为α(每次假阳性概率为α),则n次检验至少出现一次假阳性的概率会比α大。假设每次检验独立的条件下该概率可增加至1-(1-α)^n
常见的多重比较情景包括:

  • 多组间比较
  • 多个主要指标
  • 临床试验中期中分析
  • 亚组分析

反映多重比较问题的一张漫画:


常见解决方法

解决方法首先是避免多重比较的发生或者减小比较次数,比如:

  • 临床试验中选择一个主要主要指标,其他的作为次要指标,用主要指标的结果来决定试验的结果。
  • 将几个指标构建成一个复合指标作为主要指标分析。
  • 事先计划好要进行的比较,比如说不需要每两组间都进行比较,而是所有组都统一和某一个参照组比较以减少比较的次数。

有些特定问题有对应的特定方法。比如说使用方差分析进行多组间均值比较时,有专门的两两比较方法,再比如临床试验期中分析也有专门的α消耗函数来决定各次期中分析使用的检验水准。这里我们介绍临床研究中更一般情况下的多重比较的常见方法。Bonferroni法和Benjamini & Hochberg法(BH法) 这两种方法可以矫正各次检验的P值,用矫正后的P值与既定的α进行统计推断以保证总的一类错误概率不大于α。(实际上原本的方法是调整各检验的α值,我们这里介绍的是与之等价的矫正P值的方法)
设希望控制总的一类错误概率为α,比较的次数为n。

Bonferroni法

Bonferroni法得到的矫正P值=P×n
Bonferroni法非常简单,它的缺点在于非常保守(大概是各种方法中最保守的了),尤其当n很大时,经过Bonferroni法矫正后总的一类错误可能会远远小于既定α。

Benjamini & Hochberg法

简称BH法。首先将各P值从小到大排序,生成顺序数
排第k的矫正P值=P×n/k
另外要保证矫正后的各检验的P值大小顺序不发生变化。

R实现

利用R自带的基础包中的p.adjust()可以进行多重检验的P值矫正。
p.adjust(p, method = p.adjust.methods, n = length(p))

  • p为原始的p值构成的向量,
  • method指定矫正用的方法。可以用的方法可以通过运行“p.adjust.methods ”来查看,有: Bonferroni correction ("bonferroni") ,Holm (1979) ("holm"), Hochberg (1988) ("hochberg"), Hommel (1988) ("hommel") and Benjamini & Hochberg (1995) ("fdr"或“BH”)
  • n为比较次数

实例:

# BH方法
p <- c(0.020, 0.030, 0.244 ,0.510)
round(p.adjust(p, "BH"), 3)

round()指定结果输出的小数点位数。
输出结果为

## [1] 0.060 0.060 0.325 0.510

按照上面介绍的BH法,我们可以手算验证矫正的结果为:
0.08,0.06,0.325,0.510
注意原本排第一的检验结果矫正后变为0.08,比排第二的检验结果矫正后P值0.06要大,因此将原本排第一的检验的矫正后P值调整为0.06.
另外,如果调整后P值大于1,p.adjust()会将结果调整为1.

关于p.adjust()的更多内容:http://web.mit.edu/people/jhaas/MacData/afs/sipb/project/r-project/arch/sun4x_59/lib/R/library/stats/html/p.adjust.html

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