我們的雲平台上的GO富集分析工具,需要輸入的文件表格和參數很簡單,但很多同學都不明白其中的原理與結果解讀,這個帖子就跟大家詳細解釋~
一、GO富集介紹:
Gene Ontology(簡稱GO)是一個國際標准化的基因功能分類體系,提供了一套動態更新的標准詞匯表(controlled vocabulary)來全面描述生物體中基因和基因產物的屬性。GO總共有三個ontology(本體),分別描述基因的分子功能(molecular function)、細胞組分(cellular component)、參與的生物過程(biological process)。GO的基本單位是term(詞條、節點),每個term都對應一個屬性。
富集的含義:
每個基因都會對應有一個或多個GO term(也就是GO功能)。
富集涉及到兩個概念:前景基因和背景基因。前景基因就是你關注的要重點研究的基因集,背景基因就是所有的基因集。比如做兩個樣本對照組和處理組的轉錄組測序,前景基因就是對照組vs處理組的差異基因,背景基因就是這兩組樣本的所有表達基因。再比如,我想知道與整個廣東省相比,深圳市的大學生是不是顯著更多(“大學生”就相當於深圳市民的其中一個GO term)。那么前景就是深圳市的人口,背景就是廣東省的人口,每個個體都會有一個標簽(如大學生、中學生、小學生等)。
富集的意思就是,某個GO term在所關注的前景基因集中占的比例要顯著高於在所有背景基因集中所占的比例。比如上面的例子,深圳市大學生顯著富集,意思就是深圳市本科畢業的人口所占深圳市總人口的比例顯著高於廣東省本科畢業人口在廣東省總人口中所占的比例。例如下圖,我們要計算的就是10%與2%相比是否有顯著性。
那么,這個“顯著性”是如何計算的呢?就是我們眾所周知的P value。P value是利用超幾何檢驗計算出來的,具體公式如下:
其中,N為所有Unigene中具有GO注釋的基因數目;n為N中差異表達基因的數目;M為所有Unigene中注釋為某特定GO term的基因數目;m為注釋為某特定GO term的差異表達基因數目。
計算得到的P value會進一步經過多重檢驗校正,得到corrected-pvalue(也就是Q value)。通常我們會以Q value≤0.05為閾值,滿足此條件的GO term定義為在差異表達基因中顯著富集的GO term。
二、數據准備:
明白了GO富集的原理后,我們需要准備的數據就只有兩份:前景基因文件和背景基因文件。
富集目的基因文件(前景基因文件):就是你要富集分析的基因集。在上面的例子中,就是對照組vs處理組的差異表達基因。格式為每行一個基因ID,文本文件(制表符分隔)(*.txt)。
GO背景基因文件:就是所有的基因集,在上面的例子中,就是對照組和處理組所有的表達基因。1)如果你研究的物種是有參考基因組的模式物種,那么可以直接使用數據庫上已有的參考基因作為背景基因文件。目前提供的物種有水稻、擬南芥、小鼠、大鼠、斑馬魚、雞、秀麗線蟲、果蠅、人。ID類型可選擇基因ID或轉錄本ID,根據富集目的基因的ID類型決定。如果不清楚自己的文件是什么ID,可以點擊“預覽參考文件”來查看具體ID。后面的“版本”是最新的Ensemble版本號。
2)如果你研究的物種不在這些選擇范圍內,那么就要自己准備GO背景基因文件了。
因為一個基因可有多個GO term,所以文件格式有兩種:一種為第一列為基因ID,第二列為所對應的GO term,如下表:
另一種為第一列是基因ID,第二列之后為同一個基因的所有GO號,這種格式也是我們基迪奧的轉錄組denovo流程出來的結果格式,如下表:
上傳這兩種格式中的任何一種都是可以的~ 要記住,前景基因文件里的基因ID必須包含在背景基因文件里面!
如何得到基因的GO注釋?
有一些同學不知道如何獲得背景基因的GO號。通常,如果你的數據是從公司測序得到的,那么測序報告里都會有。如果你是自己搗騰的數據,那么,如果是無參考基因組的物種,就需要根據unigene的Nr注釋,用Blast2go軟件得到unigene的GO注釋信息。具體Blast2go的使用,可參考我們第二期在線交流課堂:http://www.omicshare.com/forum/thread-176-1-1.html。如果是有參考基因組的物種,可以在GO 官網上下載GO注釋信息,也可以在Biomart上下載物種的GO注釋信息,我們也有相應的教程:http://www.omicshare.com/forum/thread-437-1-1.html。
上傳完這兩個文件后,點擊“提交”就OK了。等着收菜~~
三、結果解讀: 這次我試運行的數據為荔枝趨勢分析文章里的趨勢分析結果數據,我以profile1包含的基因為前景基因集,所有趨勢包含的基因為背景基因集,做GO富集分析。
1. GO二級分類圖(out.secLevel.png/svg)
這個圖顯示了profile1的基因在各個GO term的數目和富集情況。橫坐標代表GO三個 ontology的更細一級分類,即二級分類;縱坐標代表每個分類條目所包含的基因數目。由於一個基因常常對應多個GO term,因此同一個基因會在不同分類條目下出現,即被多次統計,因此如果你把這里所有柱子的基因數目加起來,肯定是多於profiel1總的基因數目的。
2. GO富集結果表(out.[PFC].html ) 三個Ontology(C, F, P)會分別展示。以生物過程(biological process)為例子,如下表: