1. 程式人生 > >詳解如何獲取物種所有基因對應的GO註釋

詳解如何獲取物種所有基因對應的GO註釋

歡迎關注微信公眾號《生信修煉手冊》!

Gene Ontology是研究基因功能的重要資料庫之一,在進行GO的富集分析時,需要提供所有基因對應的GO註釋資訊,本文介紹幾種獲取該資訊的方式

1. 從GO官網進行下載

官網提供了幾種常見物種對應的GO註釋資訊,檔案格式為GAF, 下載連結為

human對應的檔案如下 在這裡插入圖片描述 該檔案中提供的是uniprot資料庫中的蛋白對應的GO資訊,會給出蛋白對應的uniprot資料庫編號,蛋白對應的基因symbol, 以及GO註釋,示例如下

UniProtKB A0A024R161 DNAJC25-GNG10  GO:0003924

原始檔案列數很多,我只選了前4列,第一列表示資料庫的名字,第二列為資料庫中的編號,第三列為gene symbol, 第四列為對應的GO註釋。

2. 從GOA專案進行下載

EBI對uniprot資料庫中的蛋白進行了GO註釋分析,這個專案名為gene ontology annotation, 簡稱GOA, 在FTP也提供了物種對應的註釋資訊,示意圖如下 在這裡插入圖片描述 以human為例,FTP地址如下

在這裡插入圖片描述

這裡的檔案和GO官網的檔案內容和格式是一致的,只不過數量上稍有差異。

3. 從NCBI Gene 資料庫進行下載

在NCBI檢索基因時,在結果頁面會看到該基因對應的很多註釋資訊,其中就包括了GO註釋,這些資訊在FTP上都提供了原始檔,以供下載,連結如下

幾個主要的檔案示例如下

在這裡插入圖片描述 gene2go就是基因對應的GO註釋檔案,這個檔案包含了所有物種的GO資訊,可以根據物種對應的tax id提取指定物種。

NCBI中用Entrez Id 標識每個基因,通過另外的幾個檔案,可以得到Entrez ID, Ensemble Id, Gene Symbol對應的GO資訊。

4. 從Bioconductor 獲取

對於常見的物種,Bioconductor上也提供了對應的註釋包,示意如下 在這裡插入圖片描述org.Hs.eg.db為例,這個R包儲存了很多human基因對應的資訊,通過keysselect函式可以獲得基因對應的GO註釋資訊,程式碼如下

> k <- keys(org.Hs.eg.db, keytype = "ENTREZID")[1:3]

> select(org.Hs.eg.db,
   keys = k,
   columns = c("GO", "ONTOLOGY"),
   keytype="ENTREZID")
'select()' returned 1:many mapping between keys and columns
   ENTREZID         GO EVIDENCE ONTOLOGY
1         1 GO:0002576      TAS       BP
2         1 GO:0003674       ND       MF
3         1 GO:0005576      IDA       CC

這裡的程式碼只是根據Entrez ID 得到了GO註釋資訊,其實這個R包也包含了gene symbol, ensembl id等很多其他的基因ID。

許多做富集分析的包就會從物種對應的db包中讀取GO註釋資訊。