GO富集是組學(xué)數(shù)據(jù)分析常用的手段准脂,通常用來(lái)挖掘差異基因中GO term的富集程度起胰。Fisher's exact test是常用的統(tǒng)計(jì)檢驗(yàn)方法,但這種方法存在明顯的缺點(diǎn)舷暮。很多公司提供的測(cè)序分析結(jié)果都普遍使用這樣的方法,導(dǎo)致很多后續(xù)的分析與實(shí)驗(yàn)結(jié)果不一致的情況噩茄。對(duì)于這種情況下面,目前還有其他算法來(lái)彌補(bǔ)這些缺點(diǎn)。(文中例子來(lái)源于《the Gene Ontology handbook》)
一绩聘、基本方法
Fisher's exact test
fisher's exact test是基于超幾何分布來(lái)計(jì)算的沥割,單邊檢驗(yàn)就是超幾何檢驗(yàn)。通常用來(lái)檢驗(yàn)兩組分類(lèi)是否有顯著差異凿菩。
m:研究物種的基因數(shù)机杜;
n:研究的樣本中基因數(shù);
mt:總體中被注釋到term t(GO 詞條t)的基因數(shù)衅谷;
nt:樣本中被注釋到term t的基因數(shù)椒拗。
隨機(jī)變量Xt表示樣本中被觀察到的term t 的數(shù)目,所有根據(jù)超幾何分別,觀察到k個(gè)term t 的概率P(Xt)是:
零假設(shè)H0:樣本中出現(xiàn)的term t 的數(shù)目與總體中總的term t數(shù)目沒(méi)有正關(guān)聯(lián)蚀苛。也就是說(shuō)樣本中的term t數(shù)目的比例與總體中term t的接近在验。
為了拒絕H0,使用單尾檢驗(yàn):
一個(gè)簡(jiǎn)單的例子:假設(shè)總體中有18個(gè)基因堵未,其中有5個(gè)被注釋到binding這個(gè)term译红,轉(zhuǎn)錄組分析發(fā)現(xiàn)有5個(gè)差異表達(dá)的基因,其中有3個(gè)被注釋到binding這個(gè)term兴溜,為了說(shuō)明binding這個(gè)term是否是overrepresentation侦厚,用上面的Fisher's exact test計(jì)算p值:
multiple testing problem
在現(xiàn)實(shí)中,我們不可能只對(duì)某一個(gè)term進(jìn)行檢驗(yàn)拙徽,而是對(duì)很多term進(jìn)行檢測(cè)刨沦,即多重檢驗(yàn),但這樣就會(huì)導(dǎo)致假陽(yáng)性的term數(shù)目非常高膘怕。所以我們需要對(duì)p值進(jìn)行校正想诅。通常是使用Benjamini-Hochberg校正方法來(lái)控制預(yù)期的錯(cuò)誤發(fā)現(xiàn)率(false discoveries rate-FDR)進(jìn)行校正。(如何通俗地解釋錯(cuò)誤發(fā)現(xiàn)率(FDR))岛心。盡管多重檢驗(yàn)的校正可以減少假陽(yáng)性来破,但并不能從根本上解決GO(或KEGG)富集的問(wèn)題缤底。
二哺哼、根本問(wèn)題:Gene Progagation
GO富集的根本問(wèn)題在于一個(gè)基因?qū)?yīng)的GO term有多個(gè)离唬,一個(gè)term對(duì)應(yīng)多個(gè)gene聪铺,同時(shí)還有層級(jí)關(guān)系桨螺。這樣導(dǎo)致如果一個(gè)term顯著富集榔组,那和它共享很多基因的term也會(huì)顯著富集表谊。
解決方法
有很多其他的算法來(lái)試圖解決這個(gè)問(wèn)題搔谴,其中包括parent-child approach干旁、topology-based algorithms驶沼、model-based approaches和gene set enrichment analysis。下面是對(duì)這些算法的簡(jiǎn)單介紹:
Parent-child approach
該算法還是基于Fisher's exact test争群,只不過(guò)考慮了term的父節(jié)點(diǎn)回怜。在計(jì)算概率時(shí),不再是在總體m中取樣换薄,而是從term的父節(jié)點(diǎn)中取樣玉雾,所以計(jì)算公式變成了:
當(dāng)一個(gè)term有多個(gè)父節(jié)點(diǎn)時(shí)計(jì)算就變得復(fù)雜了,具體方法還得參考原始文獻(xiàn)(improved detection of overrepresentation of Gene-Ontology annotatins with parent child analysis)
Topology-Based algorithms
Model-Based approaches
這兩種方法原理反正我沒(méi)看懂专控,有興趣的可以看原始文獻(xiàn):
1抹凳、Improved scoring of functional groups from gene expression data by decorrelating GO graph structure.
2、GOing Bayesian: model-based gene set analysis of genome-scale data
Gene Set Enrichment analysis(GSEA)
該算法首先根據(jù)感興趣的特征(比如差異基因的表達(dá)量)對(duì)基因進(jìn)行排序伦腐,形成一個(gè)列表赢底。零假設(shè)是某個(gè)基因集(genes encoding products in a metabolic pathway, located in the same cytogenetic band, or sharing the sam GO category)里基因順序與這個(gè)列表沒(méi)有關(guān)聯(lián),即排序是隨機(jī)的。對(duì)應(yīng)的備擇假設(shè)是它們之間有關(guān)聯(lián)幸冻。如果基因集里的基因都聚集在基因列表的前端或底端或者非隨機(jī)分布粹庞,我們就傾向于相信它們之間有關(guān)聯(lián)。
S:想研究的基因集洽损;
L:整個(gè)排序的基因列表庞溜;
統(tǒng)計(jì)量:Kolmogorov-Smirnov(KS)
step 1:計(jì)算富集得分(Enrichment Score)。按順序從頭到尾逐個(gè)比較L中的基因與S中的基因碑定,加和統(tǒng)計(jì)量流码,如果兩者相同就增加KS統(tǒng)計(jì)量,反之就減少KS統(tǒng)計(jì)量延刘。增加的多少與這個(gè)基因和表型的相關(guān)性有關(guān)漫试。最后ES就是KS的最大方差值。
step 2碘赖、檢驗(yàn)ES的顯著性驾荣。重復(fù)k次隨機(jī)選擇的大小為nt的基因集(Nt1,...,Ntk),p值計(jì)算公式為:
step3普泡、使用FDR進(jìn)行多重檢驗(yàn)的校正播掷。
相關(guān)軟件:GSEA-P software
參考文獻(xiàn)
1、Benjamini Y, Hochberg Y. Controlling the false discovery rate: a practercal and powerful approch to multiple testing.
2撼班、https://www.zhihu.com/question/3560619
3歧匈、Gene set enrichment analysis: A knowledge-based approach for interpreting genome-wide expression profiles
4、 《the Gene Ontology handbook》