Gene Ontology Analysis

GO分析用于回答一个简单而关键的问题:

“Given a list of genes found to be differentially expressed in my phenotype (e.g. disease) vs. control (e.g. healthy), what are the biological processes, cellular components and molecular functions that are implicated in this phenotype?”

GO富集分析:假如我有200个基因,我去数据库里找这200个基因都有什么功能。假如200个基因里160都跟细胞分裂有关,就有一定把握认为,这种疾病可能与细胞分裂有关。

需要注意的是,不能简单的用计数方法来评判哪些生物过程更重要,因为不同生物过程复杂程度不一样,一些生物过程可能涉及海量基因,另一些可能只涉及几个基因!

Gene Set Enrichment Analysis(GSEA)分析:假如你在研究某种心脏病(例如畸形),你从病人身上取了一块标本,做了个测序。然后跟正常的心肌组织比较了一下表达差异,发现有200个基因有差异。于是你在MSigDB这个数据库里搜基因集。所谓基因集就是一组跟某个特定功能或生物过程相关的基因集合。在你的这种研究背景下,你的基因集可以设置为心脏发育和功能相关的基因集。随后执行GSEA算法过程

  1. 对你手上的200个基因排序:有些在疾病中差异非常大,有些则很小。把这些基因按差异从大到小排序。排前面的可能对疾病更关键。
  2. 依次遍历你手上排序的200个基因,如果命中你预定的基因集就加分,否则就扣分,最后计算离原点最远加了多少分。如果说你手上的200个基因和和心脏发育和功能没什么关系,那就会一直扣分,否则在最开始会不断加分。
  3. 假如按照标准排序,你手上的200个基因分数很高,也不能说明你手上的基因就跟心脏发育和功能强相关,因为这个基因集可能超级大,随便挑200个基因都能拿到高分。因此需要一种Bootstrap的方式来证明这200个基因确实与心脏发育和功能有关。方法是随机打乱基因顺序,如果分数显著降低了,就表明这200个基因确实是跟心脏发育和功能有关,因为排名靠前的基因全在这个集合里。

注意事项:选择合理的背景十分重要!假如你只测了1000个基因,发现200个基因差异表达了,基因差异表达率为20%。对某个生物过程,总共有100个基因参与,在这100个基因里,有30个与你发现的200个差异表达基因重合。如果这个生物过程与你研究的表型无关,理论上你会发现20%属于这个生物过程的基因,也就是20个。但实际上你发现了30个,于是你可以计算一下因为偶然误差不小心多发现了10个属于这个生物过程的差异表达基因的概率,这个概率还是有一些的。

但有时候,你会在软件里设置背景为“全基因组测序”,但你实际上只测了1000个。假如全基因组有30000个基因,你发现200个差异表达,差异表达率仅0.0066%,在这种条件下,如果生物过程与表型无关,那你只能期望发现大约1个属于这个生物过程的差异表达基因!这种情况下,如果你一口气发现了30个与这个生物过程相关的差异表达基因,那P值将接近0!然而事实情况并不是这样的。

从上面的例子可以看到,整个富集分析的原理就是超几何分布

一个基于cBioPort的具体分析实例

  1. 在cBioPortal中找到对应的研究数据Mesothelioma (TCGA, PanCancer Atlas),在summary界面下载数据
  2. 根据病人生存期Overall Survival (Months)不同,将数据分为高生存期和低生存期,生成Sample ID或其他ID
  3. 使用Custom Selection选项选择一组,然后在Group选项中新建两个组,再选Compare
  4. 在Compare里可以选择

多样性α分析