一、假设检验

假设检验的基本思路是:

设立零假设(null hypothesis)H0,以及与零假设H0相对应的非零假设(alternative hypothesis)H1,在假设H0成立的前提下,计算出H0发生的概率,若H0的发生概率很低,基于小概率事件几乎不可能发生,所以可以拒绝零假设。

科学研究一般会把我们希望得到的结论当作非零假设,而期望否定的结论当作零假设。只要我们证明零假设发生的概率很小,我们就有理由拒绝零假设,从而接受非零假设。

例如,我希望得到的结论是早上能够八点起床。那么零假设可以设为:早上八点起不来,如果我计算出来早上八点起不来床的概率非常低,我们就可以接受非零假设:我能够八点起床。

二、假阳性

假阳性:简单打个比喻,就是你本来健健康康的,却被辣鸡医院检测出来你得了病,这就是假阳性。

假阳性率:是对于所有阳性的样本而言,其中是假阳性的有多少。比如,公司体检100个人,检测出来10个人有病,但真正有病的是8个人,那么假阳性率就是0.2。

三、 p值和q值

p值衡量的是原本我们应该接受H0,但实际接受的是H1的概率,它是针对单次统计推断的一个置信度评估。还是之前的例子,如果p=0.05,意味着:能够八点起床 这个假设出错的概率为5%。

q值衡量的是在进行多次统计推断后的假阳性率。

四、 FDR校正

之前的例子中,如果我们检验次数多达10000次,那么犯错的概率将500多次。这里虽然犯错的概率没变(5%),但是随着检验次数的增多,我们犯错的次数增多了。因此就需要多重检验校正来减低假阳性的次数。

FDR校正就是为了控制假阳性率。例如,对应于脑网络研究中,假设大脑总共有10000个体素,通过假设检验发现有2000个体素的P<0.05。那么FDR<0.02说的是在2000个激活的体素中,假阳性的体素不超过2000*0.02=40个。

五、 如何计算FDR

使用最多的是Benjaminiand Hochberg的方法,简称BH法。

BH 方法首先对p值进行升序排列,对于给定的阈值的,找到最大的k值,使得:q = (p*m)/k <α成立

其中的p为p值,m为检验次数,k为此次检验的p值在所有检验次数中的排名。

假设检验了5次 ,阈值α=0.05 ,按p值的大小升序排列

p(1) = 0.01 p(2) = 0.015 p(3) = 0.02 p(4) = 0.025 p(5) = 0.03

q(1) = (0.01*5)/1 = 0.05 q(2) = (0.015*5)/2 = 0.0375

q(3) = (0.02*5)/3 = 0.0333 q(4) = (0.025*5)/4 = 0.03125

q(5) = (0.03*5)/5 = 0.03

所以最大的k为3,即认为在FDR<0.05的情况下,1、2、3可以视作为真阳性。对应于脑网络中的那个例子,原本是五个体素都激活,但

经过FDR校正之后,只有3个激活了。

FDR校正的更多相关文章

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

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

  2. matlab FDR校正

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

  3. SPM FDR校正

    来源: http://blog.sciencenet.cn/blog-479412-572049.html,http://52brain.com/thread-15512-1-1.html SPM8允 ...

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

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

  5. 假设检验:p-value,FDR,q-value

    来源:http://blog.sina.com.cn/s/blog_6b1c9ed50101l02a.html,http://wenku.baidu.com/link?url=3mRTbARl0uPH ...

  6. MCP|MZL|Accurate Estimation of Context- Dependent False Discovery Rates in Top- Down Proteomics 在自顶向下蛋白组学中精确设定评估条件估计假阳性

    一. 概述: 自顶向下的蛋白质组学技术近年来也发展成为高通量蛋白定性定量手段.该技术可以在一次的实验中定性上千种蛋白,然而缺乏一个可靠的假阳性控制方法阻碍了该技术的发展.在大规模流程化的假阳性控制手段 ...

  7. 浅谈多重检验校正FDR

    浅谈多重检验校正FDR Posted: 四月 12, 2017  Under: Basic  By Kai  no Comments 例如,在我们对鉴定到的差异蛋白做GO功能注释后,通常会计算一个p值 ...

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

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

  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. NB-IOT覆盖范围有多大 NB-IOT的强覆盖是怎么实现的

    NB-IoT技术自出现以来就以其强大的覆盖范围和通讯距离长而受到广泛的欢迎,发展到现在已经成为万物互联网络中的一个重要分支.那么NB-IoT覆盖范围到底有多大,是怎么来衡量其覆盖能力? 强大的覆盖范围 ...

  2. python数学math和random模块

    math模块 关注公众号"轻松学编程"了解更多. 在使用math模块时要先导入 # 导入模块 import math 1.math.ceil(num) 对num进行向上取整 num ...

  3. 我叫MongoDb,不懂我的看完我的故事您就入门啦!

    这是mongo基础篇,后续会连续更新4篇 大家好我叫MongoDb,自从07年10月10gen团队把我带到这个世界来,我已经13岁多啦,现在越来越多的小伙伴在拥抱我,我很高兴.我是NoSQL大家族的一 ...

  4. .NetCore操作MongDB简要代码实现

    .NetCore操作MongoDB简要代码实现 在接触过的大多数使用mongodb的情景中,基本上都是用mongodb来存储日志的. mongodb是作为一种文档型的数据库,在管理日志文档上确实比较适 ...

  5. 使用Haproxy代理rabbitmq集群,用keepalive保证haproxy高可用

    原文地址:https://www.jianshu.com/p/440b8e1d5339 使用Haproxy代理rabbitmq集群 上一篇文章教了rabbitmq集群搭建.但是这样搭建出来的集群是3个 ...

  6. ajax 加载数据前的刷新动画

    $(document).ready(function(){     $.ajax({        type:"get",        cache:false,        u ...

  7. php连接神通数据库 ci框架

    神通数据库连接手册 1.扩展安装 目前连接神通数据库有两种方式 ODBC PDO_ACI 具体请看手册,目前使用PDO_ODBC方法PS:请看操作2 目前只有64位有pdo_aci.so文件,需要在神 ...

  8. 10、Django与Ajax

    AJAX准备知识:JSON 什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本数据交换格式 JS ...

  9. 9个JavaScript日常开发小技巧

    1.生成指定范围的数字 在某些情况下,我们会创建一个处在两个数之间的数组.假设我们要判断某人的生日是否在某个范围的年份内,那么下面是实现它的一个很简单的方法 1 2 3 4 5 6 let start ...

  10. HTML 5 <input> multiple 属性

    <form action="demo_form.asp" method="get"> Select images: <input type=& ...