以下介紹引用自
表達(dá)譜芯片數(shù)據(jù)的基因功能富集分析 劉 明1 王米渠2 丁維俊2 綜述 畢 鋒1 審校
基因富集分析是生物信息學(xué)分析領(lǐng)域的一種分析方法镊讼。常見的基因富集分析是基因功能富集分析架馋,這種方法可以對不同層次不同來源的數(shù)據(jù)進(jìn)行整合焕参,并在沒有先驗(yàn)經(jīng)驗(yàn)存在的情況下也能在表達(dá)譜整體層次上對上萬條基因進(jìn)行富集分析痹筛。
基因功能富集分析原理
基因功能富集分析又稱功能聚類分析, 主要借助于各種生物學(xué)信息數(shù)據(jù)庫和分析工具進(jìn)行統(tǒng)計(jì)分析, 挖掘在基因知識庫中同分子譜數(shù)據(jù)具有顯著相關(guān)性的功能類別, 統(tǒng)計(jì)原理是用超幾何分布型來檢驗(yàn)一組基因( 共表達(dá)或差異表達(dá)) 中某個(gè)功能類的顯著性, 通過離散分布的顯著性分析可免、富集度分析和假陽性分析,得出與實(shí)驗(yàn)?zāi)康挠酗@著關(guān)聯(lián)的耕漱、低假陽性率的及靶向性的基因功能類別, 該功能類別即是導(dǎo)致樣本性狀差異的最重要的功能差別, 而其所屬基因是需進(jìn)一步驗(yàn)證的重要目標(biāo)基因, 其功能特征將闡明樣本性狀變化的內(nèi)在生物學(xué)意義, 如圖1所示烦周。
分子譜數(shù)據(jù)可以通過多種方法獲得:
- 過倍數(shù)法库倘、Z 值法临扮、t-檢驗(yàn)及方差分析、貝葉斯分析等統(tǒng)計(jì)學(xué)方法獲得的差異表達(dá)基因
- 或者是通過K-均值聚類( K-means cluster) 教翩、分層聚類( hierarchical clustering, HC) 杆勇、自組織映射神經(jīng)網(wǎng)絡(luò)( self-organizing map, SOM) 等方法獲得的各個(gè)獨(dú)立的基因簇
基因知識庫主要指:
- Gene Ontology 數(shù)據(jù)庫( http://www.geneontology.org/)
- KEGG PATHWAY 數(shù)據(jù)庫( http://www.genome.ad.jp/kegg/pathway.html)
- BioCarta 數(shù)據(jù)庫( http://www.biocarta.com/ )
- TRANSFAC 數(shù)據(jù)庫( http://www.gene-regulation.com/pub/databases.html) 等所包括的基因集
Note: 位于同一個(gè)信號通路、生物學(xué)過程饱亿、物質(zhì)代謝通路或定位于染色體的鄰近位點(diǎn)等的一群基因被稱為一個(gè)基因集蚜退。
基因功能富集分析的相關(guān)軟件
- MAPPFinde( http://www.genmapp.org/ )
- GSEA (http://www.broad.mit.edu/gsea/)
- ArrayXPath、Expander ( http://acgt.cs.tau.ac.il/expander/ )
- Gene Set Analysis ( http://www.stat.stanford.edu/~tibs/GSA/)
基因集富集分析( gene set enrichment analysis, GSEA)
GSEA 是2003年提出來的一種對表達(dá)譜芯片進(jìn)行分析的方法, 并被編制成軟件彪笼。它的主要目的就是確定預(yù)先定義的基因集( 具有相同或相似的功能, 或位于同一染色體相鄰位點(diǎn)的一群基因) 在表達(dá)譜芯片結(jié)果中是否有顯著性钻注。
GSEA 分析過程分為5 步:
- 基因知識庫的獲得;
- 根據(jù)基因表達(dá)譜數(shù)據(jù)對所有基因進(jìn)行排序
- 計(jì)算富集得分( enrichment score, ES)
- 估計(jì)顯著性水平;
- 進(jìn)行多重假設(shè)檢驗(yàn)。
以下引用 基因表達(dá)譜富集分析方法研究進(jìn)展 曹文君配猫,李運(yùn)明幅恋,陳長生
因集的定義
基因集的定義基于統(tǒng)一的先驗(yàn)生物學(xué)知識,如已發(fā)表的有關(guān)生物通道泵肄、基因共表達(dá)信息等捆交。一個(gè)基因及是基因芯片上一組具有相同生物學(xué)功能或位于統(tǒng)一生物通道的基因。最常用于定義基因集的基因注釋數(shù)據(jù)庫有Gene Ontology (GO)腐巢、Kyoto Encyclopedia of Genes and Genomes orthology(KO)和ENTREZ品追。
1. GO功能注釋
GO是按嚴(yán)格的生物學(xué)背景、采用統(tǒng)一的術(shù)語結(jié)構(gòu)注釋基因 及其產(chǎn)品的數(shù)據(jù)庫冯丙,包含幾千條術(shù)語肉瓦,分為3大分支:分子功能(molecular function)、生物過程(biological process)和細(xì)胞組成(cellular component)胃惜。GO的每個(gè)分支是一幅有向無環(huán)圖(DAG)泞莉,含有大量節(jié)點(diǎn)(術(shù)語)和分支,越高層的節(jié)點(diǎn)代表的意義越廣泛船殉,越低層的節(jié)點(diǎn)代表的意義越狹隘鲫趁。每個(gè)節(jié)點(diǎn)含有多個(gè)意義廣泛的父項(xiàng)(parent terms)和多個(gè)意義具體的子項(xiàng)(children terms)。一個(gè)基閡能被多個(gè)術(shù)語注釋捺弦,目前許多基因還未被GO數(shù)據(jù)庫注釋饮寞。如果某一基因被某特定節(jié)點(diǎn)A注釋,則該基因?qū)⒆詣?dòng)被A節(jié)點(diǎn)的所有祖項(xiàng)(ancestors terms)所注釋列吼。
2. KO基因通路注釋
KO是由基因通路圖構(gòu)成的數(shù)據(jù)庫幽崩,描述基因調(diào)控網(wǎng)絡(luò),含有4個(gè)層次的有向無環(huán)圖寞钥,其中第3個(gè)層次直接對應(yīng)KEGG基因通路慌申。微陣列芯片上屬于同一KEGG基因通路(KO分類)的基
因可定義為一個(gè)基因集。
3. ENTREZ基因間信息注釋
ENTREZ是一個(gè)綜合性的數(shù)據(jù)庫,提供了基因和基因產(chǎn)物的大量信息,包含基因GO、KO信息况脆,以及基因間相互作用信息四。ENTREZ采用統(tǒng)一格式對基因間相互信息進(jìn)行注釋役电。類似的數(shù)據(jù)庫有BIND、BioGRID棉胀、EcoCyc和HPRD法瑟。
基因集可根據(jù)以上任一數(shù)據(jù)庫的注釋信息來定義,也可利用數(shù)據(jù)庫交叉信息進(jìn)行定義唁奢。換句話說霎挟,被同一GO或KO術(shù)語注釋的基因町定義為一個(gè)基因集;整合GO麻掸、KO注釋信息酥夭,同時(shí)也考慮來自ENTREZ的基因間相互作用信息,也町定義一個(gè)基因集脊奋。有研究者認(rèn)為多數(shù)據(jù)庫交叉信息定義的基因集更穩(wěn)健熬北,但采用單術(shù)語定義基因集簡單易操作。
本文中為大家介紹一個(gè)R語言的包ABAEnrichment狂魔,這個(gè)R包可以用來檢測在不同發(fā)育階段的特定腦區(qū)上基因表達(dá)的富集度蒜埋。該軟件包融合了AllenBrainAtlas的表達(dá)數(shù)據(jù)以及大腦結(jié)構(gòu)組織的本體論數(shù)據(jù)淫痰。
(http://bioconductor.org/packages/3.3/bioc/html/ABAEnrichment.html).
ABAEnrichment: an R package to test for gene set expression enrichment in the adult and developing human brain
https://www.ncbi.nlm.nih.gov/pubmed/27354695
改文章目前被引用2次最楷?
1.Detecting ancient positive selection in humans using extended lineage sorting **
http://www.biorxiv.org/content/early/2016/12/13/092999.full.pdf+html
2.Excavating Neandertal and Denisovan DNA from the genomes of Melanesian individuals** (補(bǔ)充材料)
http://science.sciencemag.org/content/352/6282/235/tab-pdf
上述介紹的均為基因功能富集分析,這類分析常使用本體論的方法(例如基因本體論)對受基因影響的功能和表型進(jìn)行深入研究待错。AllenBrainAtlas(ABA)計(jì)劃提供了人腦多腦區(qū)籽孙、橫跨多年齡段的基因表達(dá)信息(Allen Human Brain Atlas; human.brain-map.org and BrainSpan Atlas of the Developing Human Brain; brainspan.org)。因此火俄,這些信息可以用來探究在特定腦區(qū)/特定發(fā)育階段所涉及到的基因集犯建。該軟件包是目前為止第一個(gè)利用ABA數(shù)據(jù)庫,采用本體論方法對候選基因在特定腦區(qū)/發(fā)育階段的表達(dá)富集進(jìn)行統(tǒng)計(jì)學(xué)分析的軟件包瓜客。
富集分析首先需要對每個(gè)腦區(qū)進(jìn)行基因注釋适瓦,即將在這些腦結(jié)構(gòu)上表達(dá)的基因分配到這些腦區(qū)上。該軟件再分配之前會(huì)對基因的表達(dá)量卡一個(gè)閾值來劃分表達(dá)與否谱仪。
具體處理方法如下所示玻熙。
基因表達(dá)數(shù)據(jù)
采用了ABA提供的兩套數(shù)據(jù):成人數(shù)據(jù)以及發(fā)育數(shù)據(jù)
**1. 成年人基因表達(dá)數(shù)據(jù): **來自六個(gè)成年人被試的微陣列數(shù)據(jù)(Microarray Survey, Oct. 2013 v.7),包含了414個(gè)腦區(qū)上大約16000個(gè)標(biāo)準(zhǔn)化的基因表達(dá)數(shù)據(jù)(Microarray Data Normalization, March 2013 v.1)疯攒;
2. 發(fā)育基因表達(dá)數(shù)據(jù):來自42個(gè)跨越31個(gè)不同發(fā)育階段的被試的標(biāo)準(zhǔn)化后的RNA-Seq大約17000個(gè)基因的表達(dá)數(shù)據(jù)(RPKM, ‘RNA-Seq Gencode v10 summarized to genes')嗦随,發(fā)育階段范圍為:出生后8周到40歲。26個(gè)腦區(qū)中敬尺,有16個(gè)區(qū)域有至少20個(gè)不同的年齡階段的采樣枚尼,其他10個(gè)腦區(qū)則只有少于5個(gè)不同發(fā)育階段的表達(dá)數(shù)據(jù)贴浙。
基因表達(dá)數(shù)據(jù)的處理
**1. 成年人基因表達(dá)數(shù)據(jù): **
某特定腦區(qū)上某特定基因的表達(dá)水平定義為:該基因所有的在該腦區(qū)的樣本上所有探針測量的基因表達(dá)量的平均值。
2. 發(fā)育基因表達(dá)數(shù)據(jù):
為了增加發(fā)育效應(yīng)的統(tǒng)計(jì)檢驗(yàn)的效力署恍,發(fā)育數(shù)據(jù)僅針對上述提到的涵蓋20個(gè)不同發(fā)育階段的腦區(qū)進(jìn)行分析崎溃。當(dāng)檢測發(fā)育效應(yīng)時(shí),某基因在某腦區(qū)某發(fā)育階段的表達(dá)量定義為該腦區(qū)該階段盯质,所有樣本基因的RNA-Seq表達(dá)量的均值笨奠。
本體論
ABA提供了互相不覆蓋的腦結(jié)構(gòu)的本體論,發(fā)育數(shù)據(jù)集和成人數(shù)據(jù)集分別涵蓋了3317和1534個(gè)腦區(qū)唤殴。
**1. 成年人基因表達(dá)數(shù)據(jù): **
1534個(gè)腦區(qū)中般婆,有414個(gè)腦區(qū)有直接的基因表達(dá)數(shù)據(jù)。其他沒有直接的表達(dá)數(shù)據(jù)的腦區(qū)朵逝,若其任意一個(gè)子區(qū)域上有某給定表達(dá)的信息蔚袍,則認(rèn)為該基因在這個(gè)腦區(qū)上表達(dá)了。具體數(shù)量信息如下表所示配名。
上表中可見啤咽,在成人數(shù)據(jù)中,有直接測量得到的基因表達(dá)信息的腦區(qū)有414個(gè)渠脉;這些腦區(qū)加上通過本體論信息補(bǔ)充的(即從子區(qū)域中得到的信息)一共677個(gè)腦區(qū)宇整;在通過腦結(jié)構(gòu)本體論信息補(bǔ)充信息的區(qū)域中,有20個(gè)是冗余的芋膘,即鳞青,該區(qū)域只有一個(gè)子區(qū)域,且該子區(qū)域有表達(dá)信息为朋。故臂拓,在富集分析的輸出中,將共有657行對應(yīng)所有有注釋的腦區(qū)习寸。
2. 發(fā)育基因表達(dá)數(shù)據(jù):
如上圖所示胶惰。一共47個(gè)腦區(qū)納入分析。
富集分析
經(jīng)過用戶自定義的閾值篩選后霞溪,表達(dá)量高于閾值的的基因被注釋到腦區(qū)孵滞。這個(gè)閾值默認(rèn)為所有腦區(qū)上10%為補(bǔ)償?shù)谋磉_(dá)分位數(shù)。接下來鸯匹,軟件調(diào)用aba_enrich 函數(shù)采用超幾何檢驗(yàn)或者是Wilcoxon-秩和檢驗(yàn)進(jìn)行富集分析坊饶。
軟件實(shí)現(xiàn)
表達(dá)數(shù)據(jù)
軟件包包含三種表達(dá)數(shù)據(jù):
- 6個(gè)成年人的微陣列數(shù)據(jù)
- 42個(gè)被試橫跨 5大不同發(fā)育階段(胎兒、嬰兒忽你、兒童幼东、青少年和成年人)的RNA-Seq數(shù)據(jù)
- 每個(gè)基因的發(fā)育分?jǐn)?shù):表示年齡對該基因的表達(dá)的效應(yīng)。
這三個(gè)數(shù)據(jù)集都首先對編碼蛋白的基因進(jìn)行了篩選,然后根蟹,基因的表達(dá)量水平都在所有被試上的平均值脓杉。第三個(gè)數(shù)據(jù)集是一個(gè)衍生分?jǐn)?shù),并不包含基因表達(dá)信息简逮。
腦區(qū)上基因的注釋
基因注釋采用了描述大腦結(jié)構(gòu)層級構(gòu)架的本體論信息球散。腦區(qū)被其上或其子結(jié)構(gòu)上表達(dá)的所有基因注釋∩⑹基因的表達(dá)與不表達(dá)是通過閾值來劃分的蕉堰,這個(gè)閾值是基因表表達(dá)量的百分?jǐn)?shù),并通過設(shè)置cutoff_quantiles的參數(shù)進(jìn)行劃分悲龟。比如屋讶,閾值設(shè)為0.4,意味著大腦中低于40%表達(dá)分位數(shù)的基因被認(rèn)為“不表達(dá)”,而前60%的基因被認(rèn)為“表達(dá)”须教。每個(gè)閾值下皿渗,都會(huì)進(jìn)行獨(dú)立的基因表達(dá)富集分析。默認(rèn)為10%:10%:90%
富集分析
富集分析采用超幾何檢驗(yàn)或者是Wilcoxon-秩和檢驗(yàn)進(jìn)行富集分析(集成與FUNC軟件中)轻腺。
- 超幾何檢驗(yàn)用來估計(jì)在每個(gè)腦區(qū)上乐疆,被注釋(表達(dá)的)的候選基因相對于被注釋的背景基因的富集程度。這里涉及到背景基因如何定義贬养。背景基因可以默認(rèn)的就非常簡單的定義為所有編碼蛋白的非候選基因挤土,也可以用戶指定。
- 相對于這種二分化的對候選基因和背景基因的定義方式误算,Wilcoxon-秩和檢驗(yàn)引入了用戶給基因自定義的分?jǐn)?shù)仰美。該檢驗(yàn)可以檢測每個(gè)腦區(qū)上分?jǐn)?shù)高的基因集的富集。
分析過程中不可避免涉及到多重比較的作用尉桩,軟件包中采用了一種非參(隨機(jī)集筒占,置換檢驗(yàn)?)的方法來對family-wise error進(jìn)行控制贪庙。
隨機(jī)集的產(chǎn)生方式(默認(rèn))通過將候選基因和背景基因進(jìn)行置換(超幾何檢驗(yàn))蜘犁,或是將基因分配的分?jǐn)?shù)進(jìn)行置換(Wilcoxon-秩和檢驗(yàn))。如流程圖中所示止邮。
超幾何檢驗(yàn)方法中这橙,ABAEnrichment還提供了額外的選項(xiàng),可以在置換過程中令背景基因被隨機(jī)選為候選基因的概率與該背景基因的長度成正比(gene_len選項(xiàng))导披。
除了這種指定候選單個(gè)基因的方式屈扎,也可以選取整個(gè)基因區(qū)域作為輸入。如下圖所示撩匕,軟件檢測所選候選基因區(qū)域相對于背景基因區(qū)域在腦區(qū)上的富集程度鹰晨。此時(shí),有兩種產(chǎn)生隨機(jī)集的方式(選項(xiàng)circ_chrom): - (默認(rèn))背景區(qū)域中隨機(jī)選取一個(gè)連續(xù)block,作為新的候選基因模蜡。(可位于與候選區(qū)域不同的染色體)
- 在位于候選區(qū)域的同一條染色體上的背景區(qū)域中選取一個(gè)區(qū)域作為新的候選基因漠趁。這是不必為連續(xù)的block。
ABAEnrichment中包含的函數(shù)
函數(shù) | 描述 |
---|---|
aba_enrich | 進(jìn)行富集分析的核心函數(shù) |
get_expression | 返回給定基因集在給定腦區(qū)上的表達(dá)值 |
plot_expression | 畫出給定基因集在給定腦區(qū)上的表達(dá)值的heatmap圖 |
get_name | 返回指定腦結(jié)構(gòu)ID的全名 |
get_sampled_substructures | 返回給定腦區(qū)上有表達(dá)數(shù)據(jù)的子結(jié)構(gòu) |
get_superstructures | 返回給定腦區(qū)的上層結(jié)構(gòu) |
get_id | NEW:返回給定名字腦區(qū)的結(jié)構(gòu)ID |
get_annotated_genes | NEW:返回富集的腦區(qū)或者是用戶指定的腦區(qū)上注釋的基因 |
程序示例
這里僅介紹使用超幾何檢驗(yàn)方法檢測基因表達(dá)富集方法
設(shè)定一個(gè)候選基因集(包含13個(gè)基因)忍疾,試圖找到這些候選基因的表達(dá)究竟富集在哪些腦區(qū)上闯传。分別采用成年人數(shù)據(jù)和5個(gè)發(fā)育階段的發(fā)育數(shù)據(jù)。定義候選基因的方法是采用二值化定義的方法卤妒,0
標(biāo)記為背景基因甥绿,1
標(biāo)記為候選基因≡蚺基因的名字可以通過不同的基因標(biāo)識進(jìn)行定義 (Entrez-ID, Ensembl-ID or gene-symbol)共缕。例子中沒有特別指定背景基因,因此全部編碼蛋白的基因都被選為背景基因士复。
## load ABAEnrichment package
library(ABAEnrichment)
## create input vector with candidate genes
gene_ids = c('NCAPG', 'APOL4', 'NGFR', 'NXPH4', 'C21orf59', 'CACNG2', 'AGTR1', 'ANO1',
'BTBD3', 'MTUS1', 'CALB1', 'GYG1', 'PAX2')
genes = rep(1, length(gene_ids)) #genes變量保存一列1來標(biāo)記候選基因
names(genes) = gene_ids
genes
輸出:
## NCAPG APOL4 NGFR NXPH4 C21orf59 CACNG2 AGTR1 ANO1 BTBD3 MTUS1 CALB1 GYG1
## 1 1 1 1 1 1 1 1 1 1 1 1
## PAX2
## 1
aba_enrich
函數(shù)用來進(jìn)行核心的富集分析骄呼。其輸入為genes
向量,并用dataset
選項(xiàng)指定用于計(jì)算的數(shù)據(jù)集判没,默認(rèn)為adult
蜓萄,另外可指定為5_stages
。
## run enrichment analyses with default parameters for the adult and developing human brain
res_adult = aba_enrich(genes, dataset='adult')
res_devel = aba_enrich(genes, dataset='5_stages')
下面示例設(shè)置初始閾值澄峰。cutoff_quantiles
和 n_randsets
的默認(rèn)值為seq(0.1,0.9,0.1)
和1000
## run enrichment analysis with less cutoffs and randomsets to save computation time
res_devel = aba_enrich(genes, dataset='5_stages', cutoff_quantiles=c(0.5,0.7,0.9), n_randsets=100)
aba_enrich
返回結(jié)果為一個(gè)列表res_devel
嫉沽,其第一個(gè)元素包含了每個(gè)腦區(qū)和年齡分組的統(tǒng)計(jì)分析的結(jié)果(每個(gè)年齡分組內(nèi),獨(dú)立進(jìn)行的分析)
## extract first element from the output list, which contains the statistics
fwers_devel = res_devel[[1]]
## see results for the brain regions with highest enrichment for children (3-11 yrs, age_category 3)
fwers_3 = fwers_devel[fwers_devel[,1]==3, ]#3表示年齡分類3
head(fwers_3)
## age_category structure_id structure times_FWER_under_0.05 mean_FWER
## 55 3 Allen:10657 CBC_cerebellar cortex 0 0.5000000
## 56 3 Allen:10361 AMY_amygdaloid complex 0 0.9500000
## 57 3 Allen:10163 M1C_primary motor cortex (area M1, area 4) 0 0.9566667
## 58 3 Allen:10225 IPC_posteroventral (inferior) parietal cortex 0 0.9733333
## 59 3 Allen:10173 DFC_dorsolateral prefrontal cortex 0 0.9833333
## 60 3 Allen:10161 FCx_frontal neocortex 0 0.9866667
## min_FWER equivalent_structures FWERs
## 55 0.36 Allen:10657;Allen:10656;Allen:10655;Allen:10654;Allen:10653 0.66;0.48;0.36
## 56 0.85 Allen:10361 0.85;1;1
## 57 0.87 Allen:10163;Allen:10162 0.87;1;1
## 58 0.92 Allen:10225;Allen:10214 0.92;1;1
## 59 0.96 Allen:10173 0.96;1;0.99
## 60 0.96 Allen:10161 0.96;1;1
結(jié)果的列分別為age_category
俏竞,腦區(qū)相關(guān)信息绸硕, times_FWER_under_0.05
, min_FWER
和mean_FWER
。例如魂毁,min_FWER
為在所有閾值下玻佩,在該腦區(qū)表達(dá)的候選基因富集度的最小FWER值。FWER
列則列出了所有閾值下的FWER值席楚。
equivalent_structures
列中列出了與該腦區(qū)具有相同表達(dá)模式的其他區(qū)域咬崔,這是因?yàn)檫@些區(qū)域之間存在依賴性,并不完全獨(dú)立烦秩。節(jié)點(diǎn)(腦區(qū))從他的本體論中的子節(jié)點(diǎn)(子區(qū)域)上遺傳基因表達(dá)與否垮斯,如果某個(gè)區(qū)域只有一個(gè)子節(jié)點(diǎn)表達(dá),則該父節(jié)點(diǎn)繼承了唯一子節(jié)點(diǎn)的表達(dá)后只祠,即具有跟子節(jié)點(diǎn)完全相同的遺傳信息兜蠕。
除了統(tǒng)計(jì)的結(jié)果之外,aba_enrich
也給出了候選基因中有哪些通過閾值被劃分為表達(dá)(若在所有腦區(qū)上均沒有通過閾值則不出現(xiàn)抛寝。)熊杨。
res_devel[2:3]
## $genes
## AGTR1 ANO1 BTBD3 C21orf59 CACNG2 CALB1 GYG1 MTUS1 NCAPG NGFR NXPH4 PAX2
## 1 1 1 1 1 1 1 1 1 1 1 1
##
## $cutoffs
## age_category_1 age_category_2 age_category_3 age_category_4 age_category_5
## 50% 3.144481 2.854802 2.716617 2.776235 2.862117
## 70% 7.823920 7.017616 6.897414 6.842193 7.118609
## 90% 23.768641 22.478328 23.124388 21.625395 22.680811
如曙旭,在年齡分類2中(嬰兒),當(dāng)cutoff值為0.7(70%)時(shí)晶府,在某個(gè)腦區(qū)中夷狰,基因表達(dá)值超多7.017616才會(huì)被認(rèn)為是表達(dá)了。
展示表達(dá)數(shù)據(jù)
-
get_expression
可以輸出基因在腦區(qū)上的表達(dá)值(所有被試平均)郊霎≌油罚可以直接選取富集分析的結(jié)果中的腦區(qū),例如:
## get expression data for the first 5 brain regions from the last aba_enrich-analysis
top_regions = fwers_region[1:5, 'structure_id']#通過指定structure_id直接拉取腦區(qū)信息
top_regions
## [1] "Allen:4671" "Allen:12926" "Allen:4734" "Allen:4738" "Allen:12909"
expr = get_expression(top_regions, background=FALSE)
head(expr)
## CHMP4C FABP12 FABP4 FABP5 FABP9 IMPA1 PAG1 PMP2 SLC10A5 SNX16
## Allen:4671 3.315379 1.322007 2.948199 8.331502 1.289105 9.367726 8.846593 10.507419 2.517208 6.726171
## Allen:4675 2.784213 1.969504 3.043131 9.223920 1.588357 8.954029 7.125901 10.477008 2.137033 7.080715
## Allen:4672 2.645451 1.744787 2.177720 7.968980 1.448837 9.034155 8.390096 10.483289 2.437719 6.958238
## Allen:4444 2.586348 1.648789 2.129794 7.979775 1.358975 9.586679 8.861224 11.058100 1.990756 6.375037
## Allen:4499 3.086266 1.302643 3.250694 9.242289 1.293894 8.830867 8.682235 11.506694 1.704897 6.400059
## Allen:4734 2.518846 1.477751 1.987022 8.811209 1.377784 7.703972 10.205105 9.345247 3.046310 6.080289
## ZFAND1
## Allen:4671 8.877031
## Allen:4675 8.722243
## Allen:4672 8.863811
## Allen:4444 8.401070
## Allen:4499 8.977492
## Allen:4734 8.870895
上述代碼中书劝,若將選項(xiàng)background=FALSE
則不輸出背景基因的信息进倍,否則會(huì)輸出背景基因的信息。
除了通過富集的結(jié)果指定基因和腦區(qū)购对,還可以通過用戶指定的方式進(jìn)行設(shè)置猾昆。
## get expression data independent from previous aba_enrich analysis
regions = c('Allen:12926', 'Allen:4738', 'Allen:4671', 'Allen:12909', 'Allen:4718') #指定腦區(qū)
gene_ids = c('CHMP4C', 'FABP12', 'FABP4', 'FABP5', 'FABP9', 'IMPA1',
'PAG1', 'PMP2', 'SLC10A5', 'SNX16', 'ZFAND1') #指定基因
expr2 = get_expression(regions, gene_ids=gene_ids, dataset='adult', background=FALSE)
-
plot_expression
可以對表達(dá)數(shù)據(jù)進(jìn)行可視化。函數(shù)的使用方法和上一個(gè)差不多骡苞,也可以通過只指定腦區(qū)垂蜗,然后用富集分析的結(jié)果做為輸入。
## get expression data for the first 5 brain regions from the last aba_enrich-analysis
top_regions = fwers_region[1:5, 'structure_id']
plot_expression(top_regions, background=FALSE)
## plot the same expression data without dendrogram 不畫樹形圖
plot_expression(top_regions, dendro=FALSE, background=FALSE)
也可以單獨(dú)使用函數(shù)畫圖解幽。
## plot expression of some genes for the frontal neocortex (Allen:10161) in age category 3 (children, 3-11 yrs)
gene_ids = c('ENSG00000157764', 'ENSG00000163041', 'ENSG00000182158', 'ENSG00000147889',
'ENSG00000103126', 'ENSG00000184634')
plot_expression('Allen:10161', gene_ids=gene_ids, dataset='5_stages', age_category=3)
代碼中選取的腦區(qū)為frontal neocortex (Allen:10161)贴见,該腦區(qū)沒有直接的表達(dá)數(shù)據(jù),但是其子結(jié)構(gòu)具有表達(dá)數(shù)據(jù)躲株。畫出的圖中片部,為這些子結(jié)構(gòu)分開的結(jié)果。
-
get_name, get_sampled_substructures and get_superstructures
上個(gè)例子中我們發(fā)現(xiàn)霜定,frontal neocortex (Allen:10161)這個(gè)腦區(qū)其實(shí)在數(shù)據(jù)集中沒有基因表達(dá)的數(shù)據(jù)档悠,而其一些子區(qū)域具有表達(dá)數(shù)據(jù)。ABAEnrichment軟件提供了一些函數(shù)可以供用戶查看腦結(jié)構(gòu)本體論圖望浩,這個(gè)圖可以表征腦區(qū)之間的層次結(jié)構(gòu)組成辖所,這個(gè)層次結(jié)構(gòu)也用在了富集分析中(類似功能富集中的層次結(jié)構(gòu)的樹形網(wǎng)絡(luò))。get_sampled_substructures
函數(shù)可以返回結(jié)構(gòu)ID對應(yīng)的腦區(qū)的所有子結(jié)構(gòu)(有表達(dá)數(shù)據(jù)的)磨德。get_superstructures
函數(shù)則可以返回所有上級腦區(qū)缘回。get_name
函數(shù)則可以用來得到ID對應(yīng)的腦區(qū)的名字。
## get IDs of the substructures of the frontal neocortex (Allen:10161) for which expression data are available
subs = get_sampled_substructures('Allen:10161')
subs
## [1] "Allen:10173" "Allen:10185" "Allen:10194" "Allen:10163"
## get the full name of those substructures
get_name(subs)
## Allen:10173 Allen:10185
## "DFC_dorsolateral prefrontal cortex" "VFC_ventrolateral prefrontal cortex"
## Allen:10194 Allen:10163
## "OFC_orbital frontal cortex" "M1C_primary motor cortex (area M1, area 4)"
## get the superstructures of the frontal neocortex (from general to special)
supers = get_superstructures('Allen:10161')
supers
## [1] "Allen:10153" "Allen:10154" "Allen:10155" "Allen:10156" "Allen:10157" "Allen:10158" "Allen:10159"
## [8] "Allen:10160" "Allen:10161"
## get the full names of those superstructures
get_name(supers)
## Allen:10153 Allen:10154 Allen:10155
## "NP_neural plate" "NT_neural tube" "Br_brain"
## Allen:10156 Allen:10157 Allen:10158
## "F_forebrain (prosencephalon)" "FGM_gray matter of forebrain" "Tel_telencephalon"
## Allen:10159 Allen:10160 Allen:10161
## "Cx_cerebral cortex" "NCx_neocortex (isocortex)" "FCx_frontal neocortex"
-
NEW: get_id
可用于在本體論中尋找結(jié)構(gòu)名稱對應(yīng)的ID
## get structure IDs of brain regions that contain 'accumbens' in their names
get_id('accumbens')
## structure ontology structure_id
## 1 Acb_Nucleus Accumbens adult Allen:4290
## 2 Acb_Nucleus Accumbens, Left adult Allen:4291
## 3 Acb_Nucleus Accumbens, Right adult Allen:4292
## get structure IDs of brain regions that contain 'telencephalon' in their names
get_id('telencephalon')
## structure ontology structure_id
## 1 Tel_telencephalon developmental Allen:10158
## 2 Tel_Telencephalon adult Allen:4007
## get all brain regions included in ABAEnrichment together with thier IDs
all_regions = get_id('')
head(all_regions)
## structure ontology structure_id
## 1 NP_neural plate developmental Allen:10153
## 2 NT_neural tube developmental Allen:10154
## 3 Br_brain developmental Allen:10155
## 4 F_forebrain (prosencephalon) developmental Allen:10156
## 5 FGM_gray matter of forebrain developmental Allen:10157
## 6 Tel_telencephalon developmental Allen:10158
-
NEW: get_annotated_genes
可以用來得到注釋到某腦區(qū)的基因集剖张。(即超過閾值切诀,被認(rèn)為表達(dá)的基因)∩ε可以通過aba_enrich(...)[[3]]
,表達(dá)值可以通過得到get_expression
得到丰滑,也更方便的通過get_annotated_genes
直接得到顾犹。函數(shù)將aba_enrich
函數(shù)的輸出結(jié)果和FWER的一個(gè)閾值(默認(rèn)0.5)作為輸入倒庵,并返回所有腦區(qū)/表達(dá)閾值組合下,小于FWER閾值的有注釋的基因
炫刷、FWER以及哪些是候選基因的信息擎宝。
## run an enrichment analysis with 7 candidate and 7 background genes for the developing brain
gene_ids = c('FOXJ1', 'NTS', 'LTBP1', 'STON2', 'KCNJ6', 'AGT',
'ANO3', 'TTR', 'ELAVL4', 'BEAN1', 'TOX', 'EPN3', 'PAX2', 'KLHL1')
genes = rep(c(1,0), each=7)
names(genes) = gene_ids
res = aba_enrich(genes, dataset='5_stages', cutoff_quantiles=c(0.5,0.7,0.9), n_randsets=100)
head(res[[1]])
## age_category structure_id structure times_FWER_under_0.05 mean_FWER min_FWER
## 1 1 Allen:10294 HIP_hippocampus (hippocampal formation) 0 0.4566667 0.32
## 2 1 Allen:10398 MD_mediodorsal nucleus of thalamus 0 0.8266667 0.61
## 3 1 Allen:10361 AMY_amygdaloid complex 0 0.8900000 0.67
## 4 1 Allen:10331 CN_cerebral nuclei 0 0.8900000 0.67
## 5 1 Allen:10159 Cx_cerebral cortex 0 0.9500000 0.85
## 6 1 Allen:10158 Tel_telencephalon 0 0.9500000 0.85
## equivalent_structures FWERs
## 1 Allen:10294;Allen:10293;Allen:10292 0.67;0.38;0.32
## 2 Allen:10398;Allen:10397;Allen:10391;Allen:10390;Allen:10389 0.87;1;0.61
## 3 Allen:10361 0.67;1;1
## 4 Allen:10331 0.67;1;1
## 5 Allen:10159 0.85;1;1
## 6 Allen:10158 0.85;1;1
## see which candidate genes are annotated to brain regions with a FWER < 0.01
anno = get_annotated_genes(res, fwer_threshold=0.1)
anno
## age_category structure_id cutoff anno_gene FWER score
## 1 5 Allen:10333 0.5 AGT 0.07 1
## 2 5 Allen:10333 0.5 ANO3 0.07 1
## 3 5 Allen:10333 0.5 LTBP1 0.07 1
## 4 5 Allen:10333 0.5 STON2 0.07 1
同樣也可以直接指定腦區(qū)、表達(dá)閾值和基因浑玛。
如果指定了基因集绍申,則只輸出此基因集中的基因的表達(dá)信息,否則將輸出所有編碼蛋白的基因的信息顾彰。
## find out which of the above genes have expression above the 70% and 90% expression-cutoff, respectively,
## in the basal ganglia of the adult human brain (Allen:4276)
anno2 = get_annotated_genes(structure_ids='Allen:4276', dataset='adult',
cutoff_quantiles=c(0.7,0.9), genes=gene_ids)
anno2
## age_category structure_id cutoff anno_gene
## 1 5 Allen:4276 0.7 AGT
## 2 5 Allen:4276 0.7 ANO3
## 3 5 Allen:4276 0.7 TTR
## 4 5 Allen:4276 0.9 AGT
## 5 5 Allen:4276 0.9 ANO3
## 6 5 Allen:4276 0.9 TTR