1,超几何分布的定义

总共有N件产品,其中M件次品,现在从中抽取n件做检查,抽到k件次品的概率分布服从超几何分布。
P(k,N,M,n)=((Mk))∗((N−Mn−k))(Nn),其中k=0,1,2,...MP(k, N, M, n) = \frac{\left(M \choose k \right)*\left(N-M \choose n-k \right)}{N \choose n},其中k = 0, 1, 2, ...MP(k,N,M,n)=(nN​)((kM​))∗((n−kN−M​))​,其中k=0,1,2,...M

2,超几何分布检验

给定一个超几何分布,算出比某个事件更极端的概率,可以称为超几何分布检验。
比如在两个圈的venn图中,想要计算overlap是否显著:

假设总共的基因个数为20000个,图中左边圈总数3005可以看成是次品的总个数,现从中抽取805个产品,需要计算得到次品个数大于等于265的概率。

思考过程:在次品个数是少数的情况下,overlap越高,从超几何分布来看,发生的概率越小。现在的overlap是265,可能会是过高的那种情况,那么现在计算overlap是265以及大于265的概率之和,如果这个概率很小,那就说明发生265这个事件不是随机的,进而就推出来了overlap为265是显著性高的一个事件。

3,fisher精确检验(Fisher exact-test)的原理基于超几何分布,实际就是超几何分布检验。

4,R包中实现

R中自带超几何分布的检验(stats包)

4.1 方法1

phyper(q-1, m, n, k, lower.tail=F) #备择假设为"more"的情况

4.2 方法2

1 - phyper(q-1, m, n, k) #备择假设为"more"的情况

Note:两种方法的参数如下:

q = the number of white balls drawn from the urn (without replacement)
q对应到抽样问题,为k

m = the number of white balls in the urn
m对应到抽样问题,为M

n = the number of black balls in the urn
n对应到抽样问题,为N-M

k = the number of balls drawn from the urn (sample size)
k对应到抽样问题,为n

Note: lower.tail使用的逻辑为: if TRUE (default), probabilities are P[X ≤ x], otherwise, P[X > x].

1, 当备择假设为"less"时,即关心左端的那一部分(overlap小的那一端),无论怎么设置lower.tail,q不用q-1替代;
2,当加上lower.tail=F参数时,备择假设为"more"时,即关心右端的那一部分(overlap大的那一端),无论怎么设置lower.tail,q必须用q-1替代。

超几何分布检验(hypergeometric test)相关推荐

  1. matlab和超几何检验,用超几何分布检验做富集分析

    我们可以直接使用R的bioconductor里面的一个包,GOstats里面的函数来做超几何分布检验,看看每条pathway是否会富集 我们直接读取用limma包做好的差异分析结果 setwd(&qu ...

  2. 详解富集分析超几何分布检验

    R进行超几何分布计算 超几何分布是统计学中的一种离散分布,它描述了由有限个物件中抽出n个物件,成功抽出指定种类的物件的个数. 也是生物信息学中常用的一种统计分布模型.我们在GO,KEGG的富集分析时就 ...

  3. 超几何分布(Hypergeometric distribution)

    超几何分布 百度解释 https://baike.baidu.com/item/超几何分布/4782968?fr=aladdin 通俗解释 超几何分布中的参数是M,N,n,超几何分布记作X~H(N,M ...

  4. 几何分布的期望和方差公式推导_超几何分布的数学期望与方差推导

    考虑 个外表相同的物品,其中有 个同类物品与另一类的 个物品:抽取 个物品,每个物品的抽取等概率随机. 上述便是一个超几何分布(Hypergeometric Distribution)的基本模型. 抽 ...

  5. 数据挖掘之数理统计与常见分布与假设检验

    1 一般随机变量 1.1 随机变量的两种类型 根据随机变量可能取值的个数分为离散型(取值有限)和连续型(取值无限)两类. 1.2 离散型随机变量 对于离散型随机变量,使用概率质量函数(probabil ...

  6. 易基因 | 简化基因组DNA甲基化测序(RRBS)实验怎么做?

    易基因 | 简化基因组DNA甲基化测序(RRBS)实验怎么做? 大家好,这是专注表观组学十余年,领跑多组学科研服务的易基因. 上次我们分享了:全基因组DNA甲基化实验怎么做:手把手教你做全基因组DNA ...

  7. GO分析相关工具汇总

    GO委员会工具 AmiGO [http://amigo.geneontology.org/cgi-bin/amigo/go.cgi] AmiGO 提供检索和浏览GO委员会提供的本体学(ontology ...

  8. 【2020/07/16修订】概率论与数理统计(电子科技大学) 知识梳理 · 第一版(1到8章 · 度盘)

    概率论与数理统计 知 识 梳 理 (第一版) 建议先修课程:高等数学(微积分) 配套课程: 1.慕课(MOOC):概率论与数理统计(电子科技大学) 2.教材:概率论与数理统计 电子科技大学应用数学学院 ...

  9. 《Python数据分析基础教程:NumPy学习指南:第二版》读书笔记

    内容 主要介绍了NumPy库中的函数. 组成方式 用非常零散的知识点串联成章节. 内容摘要 极简地展示了章节中所运用的函数. 第一章 arrange函数创建NumPy数组. 第二章 NumPy特性 在 ...

最新文章

  1. Linux 命令行小技巧《叹号的用处》
  2. AI女神李飞飞:成为顶尖科学家的人生路
  3. BIND 子域授权的实现和区域转发实现
  4. getchar getche getch的区别
  5. IDC:以太网交换机市场增长2%
  6. GDCM:gdcm::SequenceOfFragments的测试程序
  7. Kubernetes(六) - Secret和私有仓库认证
  8. 关于 vim 的 magic 设置
  9. https://cwiki.apache.org/confluence/display/FLINK/FLIP-24+-+SQL+Client
  10. git 初始化git存储库_什么不保存到Git存储库中
  11. 多维数组怎么降维_从零开始的机器学习实用指南(八):降维
  12. 终于找到了满意的博客主题
  13. Linux学习总结(44)——Linux操作系统基础知识
  14. php 字符串含有下划线,PHP-我的会话ID中有下划线
  15. 深入理解PHP内核(十二)函数-函数的定义、传参及返回值
  16. 航海家辛巴达的故事(一)
  17. mongo 4.2版本注意事项
  18. 最简单的凯撒密码(C++)
  19. 视频在html不能播放器,网页播放器打不开的解决方法
  20. win10 u盘 修复计算机,怎么用u盘修复windows10专业版系统

热门文章

  1. sdf- standrad dealy format
  2. python代码雨屏保_python写的屏保程序
  3. 【每日启蒙】轻松学摄影之启蒙篇
  4. Python疫情可视化分析
  5. 115网盘链接的使用方法
  6. 移动支付中二维码条码识别率提高的方法
  7. Python + selenium 爬取淘宝网(销量,店铺名,价格等)
  8. 7天带你搞定一个图表框架echarts(五)
  9. TP5的QQ授权登录案例
  10. Alert 日志报错:ORA-2730x OS Failure Message: No Buffer Space Available