1. 兩種基因功能富集方法介紹
名詞解釋:
1. 基因功能富集分析:包括過表達分析ORA氓皱、功能分類打分FCS、基于同路拓撲結構PT和基于網(wǎng)絡拓撲結構NT和基因富集分析GSEA勃刨。常用的是ORA
和GSEA
波材。
2. ORA(Over Representation Analysis):也就是我們熟知的傳統(tǒng)的基因富集方法,是一種超幾何分布檢驗方法(Fisher's Exact Test)身隐,也就是常見的2x2方法廷区。ORA是一種廣泛使用的方法,用于確定已知的生物學功能或過程是否在實驗衍生的基因列表中被過度表達(豐富)贾铝,例如隙轻,差異表達基因列表(DEGs)。
3. GSEA(Gene Set Enrichment Analysis):ORA方法只考慮顯著差異基因垢揩,這種策略會因過高的閾值而忽略變化較小的基因玖绿,GSEA直接解決了這一局限性。所有的基因均可用于GSEA叁巨,GSEA聚合了一個基因集內每個基因統(tǒng)計數(shù)據(jù)镰矿,因此能夠以一種小而協(xié)調的方式檢測預定義的基因集中所有基因的變化情況。
4. 基因功能注釋數(shù)據(jù)庫:收集了各種物種基因的功能注釋的數(shù)據(jù)庫俘种,包括GO秤标、KEGG、Reactome和MSigDB等常見功能注釋數(shù)據(jù)庫
1.1 傳統(tǒng)的功能富集方法:
N為所有基因中具有pathway/GO term注釋的基因數(shù)目
n為N中差異表達基因的數(shù)目
M為所有基因中注釋到某特定pathway/GO term條目的基因數(shù)目
m為注釋到某特定pathway/GO term條目的差異表達基因數(shù)目
超幾何分布(hypergeometric)是統(tǒng)計學上的一種離散概率分布宙刘。它描述了由有限物體中抽出n個物體苍姜,成功抽出制定種類的物件的個數(shù)(不歸還)。超幾何分布和Fisher's Exact Test是一摸一樣的原理悬包,只是兩個不同的稱謂衙猪。
1.2 GSEA
傳統(tǒng)方法輸入的是顯著富集的差異基因list,需要經(jīng)常嘗試不同的cutoff值布近,并將上調和下調基因分開富集垫释。
而GSEA輸入的是所有的差異基因和對應的fold change值,基于fc去做統(tǒng)計學檢驗撑瞧,計算p值棵譬。
1.2.1 GSEA介紹
GSEA是一種基于基因集(也可以理解為某個term)的富集分析方法。
基于基因表達數(shù)據(jù)與表型的關聯(lián)度(也可以理解為表達量的變化预伺,比如log2FC)的大小進行排序订咸。
判斷沒個基因集內的基因是否富集于表型相關度排序后的基因列表的上部或下部曼尊,從而判斷此基因集內基因的協(xié)調變化對表型變化的影響。
1.2.2GSEA原理和步驟
- 基因排序
如上圖左邊的熱圖所示脏嚷,GSEA分析的第一步就是利用所有基因的表達數(shù)據(jù)骆撇,然后計算每個基因在兩個分組(或者表型)ClassA、ClassB中的差異度(GSEA提供了6種算法父叙,默認方法是signal2 noise神郊,GSEA官網(wǎng)有提供公式),然后按照在兩個表型中的差異度從大到小排序趾唱,形成一個排好序的基因列表屿岂。
- 分析基因集是否富集
這里的基因集,是事先根據(jù)功能或者其他的一些原理把很多的基因分類成不同的基因集合鲸匿,具體一個基因集可以是某一個通路或者go term中的所有基因,也可以是一個miRNA靶標對應的多個基因等等阻肩。GSEA提供了多個分類基因集带欢,在分析數(shù)據(jù)時,只需要選擇不同基因集就可以烤惊,當然也可以自己制作基因集乔煞。我們可以對每一個小的基因集(GeneSet )里面的基因對應一下上一步排序表里面的位置,例如上圖中的GeneSet1 (一個箭頭代表一個基因)柒室,看基因集里的成員在基因列表里面的分布情況是否均勻渡贾,例如GeneSet1就在基因列表中均勻分布,GeneSet2里面的成員主要分布在基因列表的頂部雄右,GeneSet3里面的成員主要分布在基因列表的底部空骚。如果基因集中的成員在基因列表中均勻分布,說明這個基因集不在這兩個表型中富集擂仍。如果基因集中的成員在基因列表的頂端例如圖中的GeneSet2囤屹,說明這個基因集在第一個表型ClassA中富集。如果基因集中的成員在基因列表的底部例如圖中GeneSet3逢渔,說明這個基因集在第二個表型ClassB中富集肋坚。
- 計算基因集的ES值
GSEA分析的第三步就是使用加權法計算基因集的ES值(enrichment score),對位于中部(與性狀相關性低)的部分采用較小的權值肃廓,所以越集中在兩端智厌,與表型的相關性越高。ES曲線最大值為富集分數(shù)(Enrichment Score)盲赊。
- Permutation test
評估富集得分ES的顯著性铣鹏,通過基于表型而不改變基因之間關系的排列檢驗Permutation test計算觀察到的富集得分ES出現(xiàn)的可能性,計算p值和FDR值哀蘑。
Permutation test原理:
1)假設全部基因集L有10000個基因吝沫,包含某通路基因50個(目標基因集S)呻澜,GSEA計算得到目標基因集富集分數(shù)ES=3。
2)采用隨機抽樣法惨险,從10000個基因中抽取50個基因羹幸,構建虛擬目標基因集A,計算A的ES值辫愉。隨機抽樣10000次栅受,從而得到虛擬ES值10000個。
3)根據(jù)真實ES值在10000個虛擬ES值中的位置恭朗,如果位于兩端極值位置(例如屏镊,前top1%或后top1%),則說明S所計算出的ES值不是隨機獲得痰腮,而是顯著偏大(說明基因集X基因的排位靠前)或顯著偏卸妗(說明基因集X基因的排位靠后)。真實的ES值對應位置 膀值,例如屬于前第50名棍丐,p=50/10000
1.2.3 GSEA計算中幾個關鍵概念:
概念 | 含義 |
---|---|
計算富集得分 (ES, enrichment score) | ES反應基因集成員s在排序列表L的兩端富集的程度。計算方式是沧踏,從基因集L的第一個基因開始歌逢,計算一個累計統(tǒng)計值。當遇到一個落在s里面的基因翘狱,則增加統(tǒng)計值秘案。遇到一個不在s里面的基因,則降低統(tǒng)計值潦匈。每一步統(tǒng)計值增加或減少的幅度與基因的表達變化程度(更嚴格的是與基因和表型的關聯(lián)度)是相關的阱高。富集得分ES最后定義為最大的峰值。正值ES表示基因集在列表的頂部富集茬缩,負值ES表示基因集在列表的底部富集讨惩。 |
評估富集得分(ES)的顯著性 | 通過基于表型而不改變基因之間關系的排列檢驗 (permutation test)計算觀察到的富集得分(ES)出現(xiàn)的可能性。若樣品量少寒屯,也可基于基因集做排列檢驗 (permutation test)荐捻,計算p-value。 |
多重假設檢驗矯正 | 首先對每個基因子集s計算得到的ES根據(jù)基因集的大小進行標準化得到Normalized Enrichment Score (NES)寡夹。隨后針對NES計算假陽性率处面。(計算NES也有另外一種方法,是計算出的ES除以排列檢驗得到的所有ES的平均值) |
Leading-edge subset | 對富集得分貢獻最大的基因成員菩掏。 |
false discovery rate | 錯誤發(fā)現(xiàn)率 |
1.3 GSEA和ORA方法的比較
GO富集分析是先篩選差異基因魂角,再判斷差異基因在哪些注釋的通路存在富集,這就涉及到閾值的設定智绸,存在一定主觀性并且只能用于表達變化較大的基因野揪,即我們定義的顯著差異基因访忿。
GSEA不局限于差異基因,而是從基因集的富集角度出發(fā)斯稳,理論上更容易囊括細微變化對生物通路的影響海铆。另外,對于時間序列數(shù)據(jù)或樣品有定量屬性時挣惰,GSEA的優(yōu)勢會更明顯卧斟,不需要每個分組分別進行富集,直接對整體進行處理(可以類比WGCNA分析)憎茂。
方法 | GSEA | ORA |
---|---|---|
原理 | 統(tǒng)一通路所有的基因是否在某些指標中靠前或靠后 | 差一基因集中某條通路所占比例是否與背景間存在顯著區(qū)別 |
特點 | 沒有固定閾值珍语,不受限制;原理略復雜 | 篩選的閾值必須合適竖幔;原理簡單板乙,適合大規(guī)模流程化分析 |
顯著性檢驗方法 | Premutation test(p值會有隨意性,可通過增加抽樣次數(shù)減少差異) | 超幾何分布檢驗(Fisher's Exact Test) |
??使用的基因 | 全部基因列表 | 差異基因集 |
分析是否依賴差異基因集的選取 | 不依賴 | 依賴 |
2. 多種基因注釋數(shù)據(jù)庫介紹
2.1 GO數(shù)據(jù)庫
網(wǎng)址:http://geneontology.org/
GO(Gene Ontology)數(shù)據(jù)庫由基因本體論聯(lián)合會建立拳氢,該數(shù)據(jù)庫將全世界所有與基因相關的研究結果進行分類匯總募逞。對不同數(shù)據(jù)庫中關于基因和基因產物的生物學術語進行標準化,對基因和蛋白功能進行統(tǒng)一的限定和描述饿幅。基因本體論定義了用來描述基因功能的概念/類戒职,以及這些概念之間的關系栗恩。GO術語組織在一個有向無環(huán)圖中,其中術語之間的邊表示父子關系洪燥。
它將功能分為三個方面:BP
(Biological Process磕秤,生物學過程)、CC
(Cellular Component捧韵,細胞元件)和MF
(Molecular Function市咆,分子功能)。在這三個大分支下面又分很多小層級(level)再来,level級別數(shù)字越大蒙兰,功能描述越細致。通過GO注釋芒篷,可以大致了解 某個物種的全部基因產物的功能分類情況搜变。
2.2 KEGG數(shù)據(jù)庫
網(wǎng)址:http://www.genome.jp/kegg
KEGG(Kyoto Encyclopedia of Genes and Genomes)是由日本京都大學和東京大學聯(lián)合開發(fā)的數(shù)據(jù)庫,是基因組測序和其他高通量實驗技術生成的大規(guī)模分子數(shù)據(jù)集的整合和解讀的參考知識庫针炉,可以用來查詢代謝途徑挠他、酶(或編碼酶的基因)、產物等篡帕,也可以通過BLAST比對查詢未知序列的代謝途徑信息殖侵。
KEGG是一組人工繪制的代表分子相互作用和反應網(wǎng)絡的通路圖贸呢。這些途徑涵蓋了廣泛的生化過程,可分為7大類:新陳代謝拢军、遺傳和環(huán)境信息處理楞陷、細胞過程、機體系統(tǒng)朴沿、人類疾病和藥物開發(fā)猜谚。
2.3 Reactome數(shù)據(jù)庫
網(wǎng)址:https://reactome.org/
Reactome數(shù)據(jù)庫是一個免費開源的通路數(shù)據(jù)庫,提供直觀的生物信息學工具赌渣,用于可視化魏铅,解釋和分析途徑相關知識,以支持基礎研究坚芜,基因組分析览芳,建模,系統(tǒng)生物學研究等鸿竖。Reactome利用PSIQUIC Web服務來覆蓋Reactome功能交互網(wǎng)絡和外部交互數(shù)據(jù)庫(如IntAct沧竟,ChEMBL,BioGRID和Reflndex)的分子交互數(shù)據(jù)缚忧。Pathway注釋由生物學專家和Reactome編輯人員合作編寫悟泵,并交叉引用許多生物信息學數(shù)據(jù)庫。
該數(shù)據(jù)庫目前覆蓋19個物種的通路研究闪水,包括經(jīng)典的代謝通路糕非、信號轉導、基因轉錄調控球榆、細胞凋亡與疾病朽肥。數(shù)據(jù)庫引用了100多個不同的生物信息學資源庫,包括NCBI持钉、Ensembl衡招、UniProt、UCSC基因組瀏覽器每强、ChEBI小分子數(shù)據(jù)庫和PubMed文獻數(shù)據(jù)庫等始腾。
2.4 MSigDB數(shù)據(jù)庫
MSigDB數(shù)據(jù)庫網(wǎng)址:https://www.gsea-msigdb.org/gsea/index.jsp
MSigDB數(shù)據(jù)庫是由Broad Institute研究所的科學家提出GSEA富集方法的同時提供的基因集數(shù)據(jù)庫。
該數(shù)據(jù)庫從位置空执、功能窘茁、代謝途徑和靶標結合等多種角度出發(fā),構建出許多的基因集合脆烟。目前包括H和C1-C8這九個系列的基因及山林,可供下載以及R軟件包(msigdbr)載入,以用于富集分析。
msigdbr官網(wǎng)使用說明:https://cran.r-project.org/web/packages/msigdbr/vignettes/msigdbr-intro.html
基因集 | 說明 |
---|---|
H | 癌癥特征基因集合驼抹,共50 gene sets桑孩,最常用。 |
C1 | 染色體位置基因集合框冀,共299 gene sets流椒,用的很少。 |
C2 | 包含了已知數(shù)據(jù)庫明也,文獻和專家支持的基因集信息宣虾,包含5529 gene sets。 |
C3 | 調控靶基因集合温数,包括miRNA-target以及轉錄因子-target調控模式绣硝,3735 gene sets。 |
C4 | 計算機軟件預測出來的基因集合撑刺,主要是和癌癥相關的基因鹉胖,858 gene sets。 |
C5 | Gene Ontology對應的基因集合够傍,10192 gene sets甫菠。 |
C6 | 致癌基因集合,大部分來源于NCBI GEO發(fā)表芯片數(shù)據(jù)冕屯,189 gene sets寂诱。 |
C7 | 免疫相關基因集,4872 gene sets安聘。 |
C8 | single cell identitiy gene sets, 302 gene sets |
msigdbr的使用:
# 1. 查看包含的物種(包含了11個物種)
library(msigdbr)
msigdbr_species()
# 2. 查看特定物種的基因集痰洒,比如小鼠
all_gene_sets = msigdbr(species = "Mus musculus")
head(all_gene_sets)
# 3. 檢索某個物種特定的基因集,如小鼠的hallmark基因集
h_gene_sets = msigdbr(species = "Mus musculus", category = "H")
head(h_gene_sets)
# 4. 檢索某個物種特定的基因集中的某個亞集搞挣,如檢索鼠類C2 (curated) CGP (chemical and genetic perturbations)基因集
cgp_gene_sets = msigdbr(species = "Mus musculus", category = "C2", subcategory = "CGP")
head(cgp_gene_sets)
# 5. 查看所有可以用的基因集
msigdbr_collections()
# 6. msigdbr()的輸出带迟,常規(guī)的R數(shù)據(jù)框操作都可以進行
m_df = msigdbr(species = "Mus musculus") %>% dplyr::filter(gs_cat == "H")
head(m_df)
msigdbr通路富集分析
# clusterProfiler (for genes as Entrez Gene IDs).
m_t2g = m_df %>% dplyr::select(gs_name, entrez_gene) %>% as.data.frame()
enricher(gene = gene_ids_vector, TERM2GENE = m_t2g, ...)
# clusterProfiler (for genes as gene symbols).
m_t2g = m_df %>% dplyr::select(gs_name, gene_symbol) %>% as.data.frame()
enricher(gene = gene_symbols_vector, TERM2GENE = m_t2g, ...)
-# fgsea
m_list = m_df %>% split(x = .$gene_symbol, f = .$gs_name)
fgsea(pathways = m_list, ...)
注意:
msigdbr使用的是MSigDB v7.1 (released March 2020)音羞。
可以從MSigDB 直接下載基因集囱桨,GSEABase包getGmt()函數(shù)導入數(shù)據(jù);但是從MSigDB 的數(shù)據(jù)主要是人源的嗅绰,其他物種少一些舍肠。
如果通過改變基因大小寫來進心人源和鼠的基因轉化,會有一小部分基因失敗窘面。
不使用msigdbr包翠语,biomaRt 可以進行物種間同源基因轉換;但是會面對一對多的情況财边。
Ge Lab Gene Set Files 也提供多個物種的GMT文件供下載肌括; WEHI也提供人類和鼠類的MSigDB 基因集,但是數(shù)據(jù)只是 Entrez ID以及每個基因集是單獨的文件酣难。 MSigDF 是基于WEHI 數(shù)據(jù)的谍夭。
2.5 數(shù)據(jù)庫總結
數(shù)據(jù)庫 | 適用范圍 | 特點 |
---|---|---|
GO | 幾乎所有物種 | 分為3個方面:BP(生物學過程)黑滴、CC(細胞元件)和MF(分子功能)。 |
KEGG | 幾乎所有物種 | 分為7大類:新陳代餓紧索、遺傳和環(huán)境系信息處理袁辈、細胞過程、機體系統(tǒng)珠漂、人類疾病和藥物開發(fā)晚缩。 |
Reactome | 19個物種 | 包括經(jīng)典的代謝通路、信號轉導媳危、基因轉錄調控荞彼、細胞凋亡和疾病 |
MSigDB | 11個物種 | 包括H和C1-C8九個部分(Collection),可以直接使用济舆,也可以用其中的一部分進行分析卿泽。 |