表達(dá)富集分析軟件ABAEnrichment (1)


以下介紹引用自

表達(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ú)立的基因簇

基因知識庫主要指:

基因功能富集分析的相關(guān)軟件

基因集富集分析( gene set enrichment analysis, GSEA)

GSEA 是2003年提出來的一種對表達(dá)譜芯片進(jìn)行分析的方法, 并被編制成軟件彪笼。它的主要目的就是確定預(yù)先定義的基因集( 具有相同或相似的功能, 或位于同一染色體相鄰位點(diǎn)的一群基因) 在表達(dá)譜芯片結(jié)果中是否有顯著性钻注。
GSEA 分析過程分為5 步:

  1. 基因知識庫的獲得;
  2. 根據(jù)基因表達(dá)譜數(shù)據(jù)對所有基因進(jìn)行排序
  3. 計(jì)算富集得分( enrichment score, ES)
  4. 估計(jì)顯著性水平;
  5. 進(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)所注釋列吼。

image.png

image.png

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

發(fā)表在Bioinfomatics雜志上

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á)與否谱仪。
具體處理方法如下所示玻熙。


image.png

基因表達(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ù)贴浙。

image.png
image.png

基因表達(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ù)量信息如下表所示配名。

image.png

上表中可見啤咽,在成人數(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)

軟件頁面可見
https://www.bioconductor.org/packages/release/bioc/vignettes/ABAEnrichment/inst/doc/ABAEnrichment.html

表達(dá)數(shù)據(jù)

軟件包包含三種表達(dá)數(shù)據(jù):

  1. 6個(gè)成年人的微陣列數(shù)據(jù)
  2. 42個(gè)被試橫跨 5大不同發(fā)育階段(胎兒、嬰兒忽你、兒童幼东、青少年和成年人)的RNA-Seq數(shù)據(jù)
  3. 每個(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軟件中)轻腺。

  1. 超幾何檢驗(yàn)用來估計(jì)在每個(gè)腦區(qū)上乐疆,被注釋(表達(dá)的)的候選基因相對于被注釋的背景基因的富集程度。這里涉及到背景基因如何定義贬养。背景基因可以默認(rèn)的就非常簡單的定義為所有編碼蛋白的非候選基因挤土,也可以用戶指定。
  2. 相對于這種二分化的對候選基因和背景基因的定義方式误算,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):
  3. (默認(rèn))背景區(qū)域中隨機(jī)選取一個(gè)連續(xù)block,作為新的候選基因模蜡。(可位于與候選區(qū)域不同的染色體)
  4. 在位于候選區(qū)域的同一條染色體上的背景區(qū)域中選取一個(gè)區(qū)域作為新的候選基因漠趁。這是不必為連續(xù)的block。
image.png

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_quantilesn_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_FWERmean_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)
expression heatmap for the first 5 brain regions from the last aba_enrich-analysis
## plot the same expression data without dendrogram 不畫樹形圖
plot_expression(top_regions, dendro=FALSE, background=FALSE)
expression heatmap without dendrogram

也可以單獨(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é)果。


expression heatmap of some genes for the frontal neocortex (Allen:10161) in age category 3
  • 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
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末极阅,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子涨享,更是在濱河造成了極大的恐慌筋搏,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,013評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件厕隧,死亡現(xiàn)場離奇詭異奔脐,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)吁讨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,205評論 2 382
  • 文/潘曉璐 我一進(jìn)店門髓迎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人建丧,你說我怎么就攤上這事竖般。” “怎么了茶鹃?”我有些...
    開封第一講書人閱讀 152,370評論 0 342
  • 文/不壞的土叔 我叫張陵涣雕,是天一觀的道長。 經(jīng)常有香客問我闭翩,道長挣郭,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,168評論 1 278
  • 正文 為了忘掉前任疗韵,我火速辦了婚禮兑障,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蕉汪。我一直安慰自己流译,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,153評論 5 371
  • 文/花漫 我一把揭開白布者疤。 她就那樣靜靜地躺著福澡,像睡著了一般。 火紅的嫁衣襯著肌膚如雪驹马。 梳的紋絲不亂的頭發(fā)上革砸,一...
    開封第一講書人閱讀 48,954評論 1 283
  • 那天除秀,我揣著相機(jī)與錄音,去河邊找鬼算利。 笑死册踩,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的效拭。 我是一名探鬼主播暂吉,決...
    沈念sama閱讀 38,271評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼缎患!你這毒婦竟也來了慕的?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,916評論 0 259
  • 序言:老撾萬榮一對情侶失蹤较锡,失蹤者是張志新(化名)和其女友劉穎业稼,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蚂蕴,經(jīng)...
    沈念sama閱讀 43,382評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡低散,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,877評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了骡楼。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片熔号。...
    茶點(diǎn)故事閱讀 37,989評論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖鸟整,靈堂內(nèi)的尸體忽然破棺而出引镊,到底是詐尸還是另有隱情,我是刑警寧澤篮条,帶...
    沈念sama閱讀 33,624評論 4 322
  • 正文 年R本政府宣布弟头,位于F島的核電站,受9級特大地震影響涉茧,放射性物質(zhì)發(fā)生泄漏赴恨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,209評論 3 307
  • 文/蒙蒙 一伴栓、第九天 我趴在偏房一處隱蔽的房頂上張望伦连。 院中可真熱鬧,春花似錦钳垮、人聲如沸惑淳。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,199評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽歧焦。三九已至,卻和暖如春短荐,著一層夾襖步出監(jiān)牢的瞬間倚舀,已是汗流浹背叹哭。 一陣腳步聲響...
    開封第一講書人閱讀 31,418評論 1 260
  • 我被黑心中介騙來泰國打工忍宋, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留痕貌,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,401評論 2 352
  • 正文 我出身青樓糠排,卻偏偏與公主長得像舵稠,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子入宦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,700評論 2 345

推薦閱讀更多精彩內(nèi)容