Volcano plot | 别再问我这为什么是火山图
火山圖是散點圖的一種,它將統計測試中的統計顯著性量度(如p value)和變化幅度相結合,從而能夠幫助快速直觀地識別那些變化幅度較大且具有統計學意義的數據點(基因等)。常應用于轉錄組研究,也能應用于基因組,蛋白質組,代謝組等統計數據。
所以關注火山圖(其它類型圖也是),先理解每個點是什么(點代表基因、樣品、通路或其它的,這個認識可以來自于常識,更準確的是看作者的描述),然后看橫軸代表什么、縱軸代表什么,再看圖例中展示的其他信息,如顏色、大小和形狀分別代表什么。這些都理順了,圖理解就不難了。
如圖一:
-
每個點代表一個檢測到的基因。
-
橫軸和縱軸用于固定點在空間的位置。
-
一般橫軸是Log2(fold change),點越偏離中心,表示差異倍數越大。
-
縱軸是-Log 10 (adjusted P-value),點越靠圖的頂部表示差異越顯著。
-
點的大小和顏色也可以表示更多的屬性,如下圖中點的顏色標記其對應的基因是上調,?下調還是無差異。
大小也可用于展示基因表達的平均豐度,一般我們關注表達水平較高且差異較大的基因用于后續的分析和驗證。
圖一(圖源:易生信PPT)
火山圖理解常見的幾個問題
但沒想到,在我們易生信培訓過程中,對火山圖的問題還是比較多的,我們一個個的說一下。
什么是**fold change?**
翻譯成中文是差異倍數,簡單來說就是基因在一組樣品中的表達值的均值除以其在另一組樣品中的表達值的均值。所以火山圖只適合展示兩組樣品之間的比較。
為什么要做**Log 2轉換?**
兩個數相除獲得的結果 (fold change)要么大于1,要么小于1,要么等于1。這是一句正確的廢話吧?那么對應于基因差異呢?簡單說,大于1表示上調(可以描述為上調多少倍),小于1表示下調(可以描述為下調為原來的多少分之多少)。大于1可以到多大呢?多大都有可能。小于1可以到多小呢?最小到0。用原始的fold change描述上調方便,描述下調不方便。繪制到圖中時,上調占的空間多,下調占的空間少,展示起來不方便。所以一般會做Log 2轉換。默認我們都會用兩倍差異 (fold change == 2 | 0.5)做為一個篩選標準。Log2轉換的優勢就體現出來了,上調的基因轉換后Log2 (fold change)都大于等于1,下調的基因轉換后Log2 (fold change)都小于等于-1。無論是展示還是描述是不是都更方便了。
**P-value**都比較熟悉,統計檢驗獲得的是否統計差異顯著的一個衡量值,約定成俗的P-value<0.05為統計檢驗顯著的常規標準。
什么是**adjusted P-value?**
這里面就涉及到一個統計學問題了。做差異基因檢測時,要對成千上萬的基因分別做差異統計檢驗。統計學家認為做這么多次的檢驗,本身就會引入假陽性結果,需要做一個多重假設檢驗校正。
這個校正怎么做呢?最簡單粗暴的方法是每一次統計檢驗獲得的P-value都乘以總的統計檢驗的次數獲得adjusted P-value?(這就是Bonferroni correction)。
但這樣操作太嚴苛了,很容易降低統計檢出力,找不到有差異的基因。后續又有統計學家提出相對不這么嚴苛的計算方法,如holm,?hochberg,?hommel,?BH,?BY,?fdr等。BH是我們比較常用的一個校正方法,獲得的值是假陽性率 FDR?(false discovery rate)。
FDR篩選時就可以不用遵循0.05這個標準了。我們可以設置FDR<0.05表示我們容許數據中存在至多5%假陽性率;FDR<0.1表示我們對假陽性率的容忍度至多是10%。當然如果說我們設置FDR<0.5,即數據中最多可能有一半是假陽性就說不過去了。
同樣為什么做**-Log 10轉換呢?**
因為FDR值是0-1之間,數值越小越是統計顯著,也越是我們關注的。-Log 10 (adjusted P-value)轉換后正好是反了多來,數值越大越顯著,而且以10為底很容易換算回去。
理解完這些之后,再來看火山圖。
-
整體來看,基因有上調就有下調,圖整體是以X=0的垂線左右對稱的。如果數據中大部分點都是上調或下調,成偏態分布時,需考慮標準化步驟沒有處理好,或數據存在批次效應,導致數據存在系統偏差。
-
圖的左上角和右上角是差異基因集中的地方,也是我們關注的重點。
-
圖一中左側的火山圖還展示了基因表達的平均豐度,即基因在所有樣品中表達的均值。一般變化倍數大、平均表達也比較高的基因會更可信,更適合后期實驗檢測,否則就算變化倍數再大,表達低的基因也難以被檢測到。
番外:
差異倍數fold change還有另外一種處理方式。假如有兩個樣品A和B。如果某個基因在A中表達比較高,則計算fold change是用A/B; 。如果某個基因在B中表達比較高,則計算fold change是用B/A,然后乘以-1;?gtools::foldchange是這么操作的。
adjusted P-value,?q value,?fdr一般代表相同的含義,都是多重假設檢驗校正后的P-value,可能的區別就在于校正算法的不同。
幾個代表性火山圖
火山圖雖然用的多,但其實能提供的信息算不上多,一般是在上面標記一些關注的基因的名字,然后在正文中做下描述。標記基因名字的方式也比較多,圖二中左圖的顏色標示是一個不錯的選擇。
圖二(圖源:易生信PPT)
圖二右圖來自2017年發表在Cell的一篇文章-Epigenetic Therapy Ties MYC Depletion to Reversing Immune Evasion and Treating Lung Cancer。
- https://www.sciencedirect.com/science/article/pii/S0092867417312448
一排火山圖放在一起是不是很有氣勢,更主要的是展示了5種疫苗誘導的差異基因數目顯著不同,在圖上紅點多少展示出的視覺沖擊還是優于圖標中的數字表示的,更容易留下直觀的印象。個人覺得是一個很有特色的火山圖案例。
圖三
圖三來自文章Edwards, J., et al. (2015). PNAS Fig. 2A。
- http://www.pnas.org/content/112/8/E911.short
這是一篇16S分析文章較系統的作品,兩年被引用147次,推薦閱讀。上面的火山圖展示了水稻根不同生態位相對于土壤中顯著差異的OTU,橫坐標是相對豐度平均值(Log10?轉換),縱坐標是Log10(fold change),整體類似于圖一中的左圖,只是轉換了X和Y軸變量。
圖四
火山圖就是散點圖,點的顏色可展示代表性屬性。
圖四來源—?https://arxiv.org/pdf/1103.3434.pdf?:
第6號染色體上的探針/基因用紅色標記,在基因注釋中帶有“細胞因子”的探針/基因用藍色標記。
增強火山圖之在基本火山圖的基礎上,標注有變量-基因名。
上圖共有64102個變量,綠色的點的|log2FC|>1,藍色的點是P value <0.0001。紅色的點是滿足了以上兩點要求的變量。
如有雷同數據,可大膽參照模仿,更多增強火山圖見:
傳送門(代碼)??
- 增強火山圖,要不要試一下?
火山圖繪制
最簡單的繪制方法是使用我們的在線網站——imageGP(http://www.ehbio.com/ImageGP/)。
總結
以上是生活随笔為你收集整理的Volcano plot | 别再问我这为什么是火山图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 眼液蛋白水平或许可预测阿尔茨海默症
- 下一篇: 不怕贼偷,就怕贼惦记!