zoukankan      html  css  js  c++  java
  • p值还是 FDR ?

    p值还是 FDR ?

    如何筛选显著性差异基因,p value, FDR 如何选

    经常有同学询问如何筛选差异的基因(蛋白)。已经计算了表达量和p value值,差异的基因(蛋白)太多了,如何筛选。其中最为关键的是需要对p value进行校正。

    基本概念:

    1. 零假设:在随机条件下的分布。

    2. p值:在零假设下,观测到某一特定实验结果的概率称为p值。

    3. 假阳性:得到了阳性结果,但这个阳性结果是假的。

    4. 假阴性:得到了阴性结果,但这个阴性结果是假的。

    单次检验:

    针对单个基因(蛋白),采用统计检验,假设采用的p值为小于0.05,我们通常认为这个基因在两个(组)样本中的表达是有显著差异的,但是仍旧有5%的概率,这个基因并不是差异基因。

    单多次检验:

    当两个(组)样本中有10000个基因采用同样的检验方式进行统计检验时,这个时候就有一个问题,单次犯错的概率为0.05, 进行10000次检验的话,那么就有0.05*10000=500 个基因的差异被错误估计了。

    多重检验矫正:

    为了解决多次检验带来的问题,我们需要对多次检验进行校正。那如何校正呢?在此介绍两种方法:

    1. Bonferroni 校正法  
      Bonferroni校正法:如果进行N次检验,那么p值的筛选的阈值设定为p/N。 比如,进行10000次检验的话,如果p值选择为0.05, 那么校正的p值筛选为0.000005。 p值低于此的基因才是显著性差异基因。  
      该方法虽然简单,但是过于严格,导致最后找的差异基因很少,甚至找不到差异的基因。

    2. FDR(False Discovery Rate) 校正法  
      FDR错误控制法是Benjamini于1995年提出的一种方法,基本原理是通过控制FDR值来决定p值的值域。相对Bonferroni来说,FDR用比较温和的方法对p值进行了校正。其试图在假阳性和假阴性间达到平衡,将假/真阳性比例控制到一定范围之内。  
      那么怎么从p值来估算FDR呢,人们设计了几种不同的估算模型。其中使用最多的是Benjamini and Hochberg方法,简称BH法。该方法分两步完成,具体如下:  
      2.1  假设总共有m个候选基因,每个基因对应的p值从小到大排列分别是p(1),p(2),…,p(m)  
      2.2  若想控制FDR不能超过q,则只需找到最大的正整数i,使得 p(i)<= (i*q)/m . 然后,挑选对应p(1),p(2),…,p(i)的基因做为差异表达基因,这样就能从统计学上保证FDR不超过q。

    如何实现多重检验:

    1. 如果你了解R语言的话,那么采用p.adjust方法就可以了。  

  • 相关阅读:
    shell命令编程小例
    汇编输出0255ascii码(VGA下)
    linux程序时间控制小例
    Undefined exploded archive location 项目不能部署
    关于org.apache.jasper.JasperException: Unable to compile class for JSP问题的解决
    Some characters cannot be mapped using "GBK" character encoding 的解决办法
    如何处理Windows Forms程序中未处理的异常
    关于bos的edit页面的文件加载顺序
    关于unable to extend lob segment的问题解决方法
    从事ASP.NET开发两年多,谈谈对两三年工作经验的ASP.NET程序员的基本见解
  • 原文地址:https://www.cnblogs.com/wangprince2017/p/9937351.html
Copyright © 2011-2022 走看看