来源:http://blog.sina.com.cn/s/blog_6b1c9ed50101l02a.html,http://wenku.baidu.com/link?url=3mRTbARl0uPHHRFO9CdqhBNeUj-nb8dRwtqRN2oGqu8u1kN6IsqgYy-H8ggB7jOkPXhx703oM9YW9ftfOlh2dz7KJmlliOhDa4-WZFEEus_,http://www.dxy.cn/bbs/thread/28263194#28263194

一、假设检验基础:p-value相关
 
0. 单个假设检验中主要依靠p值(或统计量t)做出是否拒绝零假设H0的决定:p-value和预先设定的检验水准alpha做对比,如果p-value小于等于alpha,拒绝原假设,否则不拒绝原假设。
1. p-value:表征了在原假设成立的条件下,重复进行当前的试验,获得现有统计量t及其更极端情况的概率。
2. 给定检验水准alpha时,可得出对应的拒绝域;根据当前试验,可以计算出p-value。当p-value越小时,表示此时试验得到的统计量t越落在拒绝域。因此基于p-value的结果等价于基于t值的结果。因此,p-value越小,拒绝原假设的信心越大。
3. 假阳性率:false positive rate, FPR。检验水准alpha给出了事先犯I-型错误的最大概率。
 
自己重新翻了一下书(《现代教育与心理统计学》,第八章),笔记如下:
· 差异是否显著:从平均数为x0的总体重人意抽取的样本平均数x1(这里为了打字方便就用这两个记号表示了),只要x1落在下图(网络来源)左上非阴影区域,那么就认为当x1与x0不重合时,其的差异是抽样误差所致,即“差异不显著”,此时接受H0。
 
· alpha(显著性水平)
如果上图左上两边阴影面积加起来占全面积1%,等价于alpha = 0.01。
· 两类错误(假设alpha = 0.01)
Ⅰ型错误(“弃真”):当x1落入阴影面积,我们的错x1与x0差异显著的结论,但与此同时,这个结论也有可能是错的,即有1%的可能犯错。这种错误发生是因为H0本来是正确的,但我们错误地拒绝了它。可以看到Ⅰ型错误的发生概率等于alpha。
Ⅱ型错误(“取伪”):H0本来是错误的,但我们错误地接受了它,此时犯错误的概率,一般记为beta。
==> 为了即以方便,我们只要记住“弃真”“取伪”中的“真”和“伪”都是说H0的,并且行为都是和理论行为相反(“真”时反而抛弃,“伪”时反而接受)。
==> alpha + beta并不等于1,因为两类错误的前提不同:Ⅰ类错误中H0为真,那么所有讨论应当在类似于上图左上的正态分布中讨论;而在Ⅱ类错误中,H0为假等价于H1为真,那么就应当在H1的正态分布中讨论,此时beta和之前的alpha是没有关系的两个量。
==> 统计检验力(1 - beta):如果x1真实值与x0很小,某个检验仍然可以以较大把握接受它,那么就说这个检验的统计检验力很大(即(1 - beta)增大,即beta减小)。
· 单侧检验与双侧检验
 (这图网上搜的...也是醉了)
从上到下依次为右侧(right-tailed)、左侧(left-tailed)以及双侧(two-tailed)检验。
··· 右侧检验(拒绝域在右侧):
H0:μ ≤ μ0,H1:μ > μ0
阴影部分面积:alpha;
··· 左侧检验(拒绝域在左侧):
H0:μ ≥ μ0,H1:μ < μ0
阴影部分面积:alpha;
··· 双侧检验(拒绝域在两侧)
H0:μ = μ0,H1:μ ≠ μ0
阴影部分面积:alpha/2。
==>由以上内容可以看出:alpha一定的情况下,相比于单侧检验,双侧检验的临界点要更远离μ0,即beta增大,即“取伪”错误概率增大。所以一个问题如果可以用单侧检验,就不要用双侧检验。(当然必须用双侧检验的,不要强行用单侧检验)
 
“一般认为双侧检验较保守和稳妥,而单侧检验由于充分利用了另一侧的不可能性,更易得出有差异性的结论,但应慎用。单侧检验和双侧检验中计算统计量的过程是相同的,先确定概率P值时的‘显著界限值’是不同的。如alpha = 0.05,自由度v = 14,取单侧显著性界限值t = 1.761,而双侧显著界限值t = 2.145,可见单侧检验界值比双侧检验界值小,以为着进行单侧检验时,统计量易达到界限水平,即易得P < 0.05的结论。”
 
 
二、多重假设检验和总体错误率
 
0. 在进行多重假设检验时,每个单独的假设都具有其本身的I型错误。在这种情况下,如果不进行任何的控制,犯I-型错误的概率会随着假设检验的个数而迅速增加。

(严超赣老师在DPARSF的教学视频中对为什么要进行FDR校正进行了详细的举例说明:

“单个体素,p = 0.05,即犯错概率为5%。但如果要对五个体素一起校正,那么犯错误概率就会变成 p = 1 - (0.95)^5 = 0.23。这样的话很容易就会出现“假阳性(false positive)”,即H0被错误拒绝的情况。再换句话说,随着体素数目增多,Ⅰ型错误(“弃真”错误)的概率增大了。但这种情况下,即使出现H0被拒绝,我们也不能说H0为假。为了控制这种情况。最简单的方法是把每个体素p值都减小,例如bonferroni's correction:假设需要所有5个体素犯错误概率为0.05,那么控制每个体素p = 0.05/5 = 0.01。但这种方法太严格,如果体素较多,例如100个,那么控制每个体素p = 0.005已经很难,更别说大脑中动辄上万个体素了。所以我们一般考虑其他更灵活的矫正方式,如FWE、FDR以及AlphaSim。”)

1. 多重假设检验中,广泛使用的错误控制指标是总体错误率(family-wise error rate,FWER),即至少出现一次错误地拒绝真实H0的可能性;FWER小于等于alpha。而研究者更关心的是能否尽量多地识别出差异表达的基因,并且能够容忍和允许总的拒绝中发生少量的错误识别,称为错误发现false discovery。即需要在错误发现和总的拒绝次数R之间寻找一种平衡,即在检验出尽可能多的候选变量的同时将错误发现率控制在一个可以接受的范围。

2. 错误发现率(False Discovery Rate,FDR),表示了在所有R次拒绝中错误发现的期望比例。错误发现率和假阳性率之间有着本质的差别。错误发现率将范围限定在总的拒绝次数中;而假阳性率则针对所有变量数而言。
3. 给定FDR的控制水平alpha,多重假设检验次数M,通过求得拒绝H0的次数N,可得出多重检验M次中,有多少次是被错误识别的(=alpha * N)。Benjamini和Hochberg给出了一个基于p-value的逐步向下控制程序,用于求出拒绝H0的次数N的值。并且证明在BH控制下,FDR 小于等于 alpha。
三、pFDR和q值
0. pFDR阳性错误拒绝率,是基于至少拒绝一个H0的事实。经过一系列的推导,pFDR的实际意义是,在pFDR错误率控制下,当拒绝一个H0时,该假设为真实的概率;pFDR反应了已经在拒绝H0的情况下H0 = 0的概率。可以认为pFDR是贝叶斯后验p值。

1. 按照和p-value类似的定义,Storey给出了q-value的定义

2. q-value量化了在观察统计量T = t时,拒绝H0所犯的最小pFDR。p-value的定义基于H0=0的条件而量化T属于Talpha的概率,显然q值是p值定义的一个逆过程,q值是基于T属于Talpha的条件而量化H0=0的概率。

3. 和BH控制不同,q值和pFDR正好相反,即通过选定的拒绝域Talpha去估计对应的q值,当q小于等于alpha时,可保证FDr小于等于alpha。Storey给出了关于q值和pFDR的估计算法。

4. 根据p-value或q-value可以计算对应的FDR,多重假设检验中拒绝H0的次数。

5. BH计算错误发现率时具有保守性,即在降低假阳性的同时,也减少了正确的假设。为此可采用q-value用于FDR计算。

在此加入严超赣老师在DPARSF教学视频中对FDR讲解(下图来自于视频PPT):

V:本来无显著差别的“宣布为”有显著差别,即错误判断的个数;R:总共报告有显著差别的个数。

则V/R代表:犯错误的几率。

那么FDR = E(V/R)表示:在所有报告有显著差异的个体中可能误报的比例,即Q value。

举例:Q = 0.05,那么报告了100个显著差异体素,其中最多有5个是实际上无显著差异的。

====================================================================

FDR错误控制法是Benjamini于1995年提出一种方法,通过控制FDR(False Discovery Rate)来决定P值的域值. 假设你挑选了R个差异表达的基因,其中有S个是真正有差异表达的,另外有V个其实是没有差异表达的,是假阳性的。实践中希望错误比例Q=V/R平均而言不能超过某个预先设定的值(比如0.05),在统计学上,这也就等价于控制FDR不能超过5%.
对所有候选基因的p值进行从小到大排序,则若想控制fdr不能超过q,则只需找到最大的正整数i,使得 p(i)<= (i*q)/m.然后,挑选对应p(1),p(2),...,p(i)的基因做为差异表达基因,这样就能从统计学上保证fdr不超过q。因此,FDR的计算公式如下:

q-value(i)=p(i)*length(p)/rank(p)

假设检验:p-value,FDR,q-value的更多相关文章

  1. matlab FDR校正

    http://home.52brain.com/forum.php?mod=viewthread&tid=27066&page=1#pid170857 http://www.mathw ...

  2. 学习笔记49—matlab FDR校正

    matlab自带函数mafdr,当ttest数较多时,可直接用[FDR, Q]=mafdr(P):但是Storey procedure在p值少于1000个时会崩溃,此时应改用BH FDR方法:mafd ...

  3. IGS_学习笔记03_Integrated SOA Gateway设定配置(案例)

    20150506 Created By BaoXinjian

  4. 学习笔记50—多重假设检验与Bonferroni校正、FDR校正

    总结起来就三句话: (1)当同一个数据集有n次(n>=2)假设检验时,要做多重假设检验校正 (2)对于Bonferroni校正,是将p-value的cutoff除以n做校正,这样差异基因筛选的p ...

  5. FDR错误发现率-P值校正学习[转载]

    转自:https://baike.baidu.com/item/FDR/16312044?fr=aladdin  https://blog.csdn.net/taojiea1014/article/d ...

  6. SAGE|DNA微阵列|RNA-seq|lncRNA|scripture|tophat|cufflinks|NONCODE|MA|LOWESS|qualitile归一化|permutation test|SAM|FDR|The Bonferroni|Tukey's|BH|FWER|Holm's step-down|q-value|

    生物信息学-基因表达分析 为了丰富中心法则,研究人员使用不断更新的技术研究lncRNA的方方面面,其中技术主要是生物学上的微阵列芯片技术和表达数据分析方法,方方面面是指lncRNA的位置特征. Bac ...

  7. FDR校正

    一.假设检验 假设检验的基本思路是: 设立零假设(null hypothesis)H0,以及与零假设H0相对应的非零假设(alternative hypothesis)H1,在假设H0成立的前提下,计 ...

  8. FDR

    声明: 网上摘抄 False discovery rate (FDR) control is a statistical method used in multiple hypothesis test ...

  9. regression | p-value | Simple (bivariate) linear model | 线性回归 | 多重检验 | FDR | BH | R代码

    P122, 这是IQR method课的第一次作业,需要统计检验,x和y是否显著的有线性关系. Assignment 1 1) Find a small bivariate dataset (pref ...

随机推荐

  1. iPhone 信号格转变数字

    ?在拨号键输入*3001#12345#* ?按呼叫键,就会进入Field Test页面 ?你就会看到信号格变为了数字,然而只要按home键返回就又会变为信号格 ?如果想一直变为数字的话,在Field ...

  2. 【读书笔记】iOS-ARC-不要向已经释放的对象发送消息

    一,在AppDelegate.m中写入如下代码: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOpti ...

  3. IOS开发之小实例--使用UIImagePickerController创建一个简单的相机应用程序

    前言:本篇博文是本人阅读国外的IOS Programming Tutorial的一篇入门文章的学习过程总结,难度不大,因为是入门.主要是入门UIImagePickerController这个控制器,那 ...

  4. php设计模式 策略模式

    策略模式: 将一组特定的行为和算法封装成类,以适应某些特定的上下文环境: 实际应用举例,假如一个电商网站系统,针对男性女性用户要各自跳转到不同的商品类目,并且所有广告位展示不同的广告. UserStr ...

  5. 回到过去美好的时光——源代码版本管理Always Use source code Control

    Don't Repeat Yourself Don't Repeat Yourself,这是程序员修炼之道中的经典名言.源代码版本管理对程序员来说是非常重要的工作.因为它让你能够回到过去,而不用做重复 ...

  6. 查看mysql,apache,php,nginx编译参数

    查看nginx编译参数: #/usr/local/nginx/sbin/nginx -V   查看mysql编译参数: cat /usr/local/mysql/bin/mysqlbug | grep ...

  7. MySQL基础学习(二) 常用SQL命令

    一. 1. select version();  查看数据库版本 2. select user(); 查看当前用户 3. select now(); 查看当前时间 4. show databases; ...

  8. Android程序函数 将assets文件夹下的文件复制到手机的sd卡中(包括子文件夹)

    最近在做个功能是将asset文件夹下的所有文件(包括子文件)全部拷贝出来到指定目录下.所用的方法无非是用AssetManager.但是这里 有个问题是也要讲子文件夹和子文件都要拷贝出来.到网上Goog ...

  9. canvas作为背景

    比如canvas的id是HB, 画好后执行document.body.style.background = "url('"+HB.toDataURL()+"')" ...

  10. ORA-00020: No more process state objects available故障一例

    今天公司一大早收到通知,昨天数据库数据未生成.当时查看跑批的日志,发现平常只需运行半个小时的过程,今天整整运行了7个小时(明显存在问题),导致后续数据正常时间读取失败.为了了解起因,查看了oracle ...