最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

R語言學(xué)習(xí)之火山圖的繪制詳解

 更新時間:2022年03月01日 15:14:43   作者:生信寶典  
火山圖作為散點圖的一種,將統(tǒng)計測試中的統(tǒng)計顯著性量度和變化幅度相結(jié)合,從而能夠幫助快速直觀地識別那些變化幅度較大且具有統(tǒng)計學(xué)意義的數(shù)據(jù)點。本文將為大家詳細介紹如何利用R語言繪制火山圖,需要的可以參考一下

火山圖

火山圖用于展示基因表達差異的分布,橫軸為Log2 Fold Change,越偏離中心差異倍數(shù)越大;縱軸為(-1)*Log10 P_adjust,值越大差異越顯著。一般橫軸越偏離中心的點其縱軸值也會比較大,因此呈現(xiàn)火山噴發(fā)的形狀。

一步繪制火山圖

輸入數(shù)據(jù)格式

火山圖需要的數(shù)據(jù)格式如下 (本文用到的數(shù)據(jù)文件名為volcano.txt,文末有下載鏈接,此處截取一部分作為例子,也可用來畫圖,只是數(shù)據(jù)少,效果不明顯)

  • id: 不是必須的,但一般的軟件輸出結(jié)果中都會包含,表示基因名字。
  • log2FoldChange: 差異倍數(shù)的對數(shù),一般的差異分析輸出結(jié)果中也會給出對數(shù)處理的值, 因此程序沒有提供這一步的計算操作。
  • padj: 多重假設(shè)檢驗矯正過的差異顯著性P值;一般的差異分析輸出結(jié)果為原始值,程序提供一個參數(shù)對其求取負對數(shù)。
  • significant: 可選列,標記哪些基因是上調(diào)、下調(diào)、無差異;若無此列或未在參數(shù)中指定此列,默認程序會根據(jù)padj列和log2FoldChange列根據(jù)給定的閾值自動計算差異基因,并作出不同顏色的標記。
  • label: 可選列,一般用于在圖中標記出感興趣的基因的名字。非-行的字符串都會標記在圖上。
id	log2FoldChange	padj	significant	label
E00007	4.28238	0	EHBIO_UP	A
E00008	-1.1036	0.476466843393901	Unchanged	-
E00009	-0.274368	1	Unchanged	-
E00010	4.62347	7.37606076333335e-103	EHBIO_UP	-
E00012	0.973987	0.482982440163204	Unchanged	-
E00017	-1.30205	0.000555693857439792	Baodian_UP	B
E00024	0.617636	2.78047837287061e-13	Unchanged	-
E00033	1.48669	2.56000581595275e-60	EHBIO_UP	-
E00034	-0.783716	0.00341521725291801	Unchanged	-
E00036	2.01592	6.03136656016401e-06	EHBIO_UP	C
E00040	-1.89657	4.73663890849056e-21	Baodian_UP	-
E00041	-0.268168	0.563429434558031	Unchanged	-
E00042	0.0861048	0.367700939634328	Unchanged	-
E00043	-1.19328	1.42673872027352e-153	Baodian_UP	-
E00044	-0.887981	2.43067804654905e-26	Unchanged	-
E00047	-0.610941	5.51696648645932e-57	Unchanged	-

使用significant列繪制火山圖

# -f: 指定輸入文件,格式如上
# -x: 指定橫軸變量,值為輸入文件中與取過對數(shù)的變化倍數(shù)相關(guān)的列的名字
# -y: 指定縱軸變量,值為輸入文件中與P-value
#     (也可能是p-adj,是否取過對數(shù)都可以)相關(guān)的列的名字
# -P: 若為TRUE,則表示對<-y>指定的列進行-log10轉(zhuǎn)換
# -L: 指定圖例的位置
# -s: 指定差異基因列
# -S: 指定差異基因列不同的標簽出現(xiàn)的順序
sp_volcano.sh -f volcano.txt -x log2FoldChange -y padj -s significant -S "'EHBIO_UP', 'Baodian_UP', 'Unchanged'" -P TRUE -L top

這個圖看上去還可以,沒有太大的問題。但有部分點與最頂端的線重合了,這些點的pvalue為0,取負對數(shù)后為負無窮。另外在一些情況下,會存在部分基因的pvalue極小,使得整張圖呈現(xiàn)一個壓縮的趨勢,大部分點偏安于圖的下方,中間大段空白,最上面零星幾個點。為了避免這種情況,程序設(shè)置了參數(shù)-M用于設(shè)定pvalue的最大的負對數(shù),所有大于給定值的數(shù),都會視為給定值。

# -M 10: 指定P-value(也可能是p-adj);若小于10^(-10),則為10^(-10)
#        用于部分p-value存在異常值,導(dǎo)致整個圖都被壓縮在最底部
p_volcano.sh -f volcano.txt -x log2FoldChange -y padj -s significant -S "'EHBIO_UP', 'Baodian_UP', 'Unchanged'" -P TRUE -L top -M 10

注意看縱軸的變化,和最上面排成一條線的一堆點。

自動計算significant列繪制火山圖

若不存在significant列,程序會根據(jù)-F指定的參數(shù)計算并標記差異基因。-F的默認值為"0.05,1"(引號是必須的), 第一個數(shù)表示pvalue或padj,對應(yīng)于<-y>列;第二個數(shù)表示對數(shù)轉(zhuǎn)換的差異倍數(shù),對應(yīng)于<-x>列。

# <-F "0.05,1">, 默認值,故命令行中未寫,引號是必須的
sp_volcano.sh -f volcano.txt -x log2FoldChange -y padj -P TRUE -L top

# -M 10: 與之前相同
sp_volcano.sh -f volcano.txt -x log2FoldChange -y padj -P TRUE -L top -M 10

火山圖中標記基因的名字

# -l: label,在圖中標記部分基因的名字;
# label為含有待標記基因名字的列名,此列中非<->的非空字符都會視為基因名字
sp_volcano.sh -f volcano.txt -x log2FoldChange -y padj -P TRUE -L top -M 10 -l label

label列中非-的值都會標記在圖上。

今天先到這,前天提到的富集分析圖,今天的火山圖都是散點圖的一種,后續(xù)介紹散點圖時再對用到的R代碼進行解讀。需要繪圖腳本的,還是請幫助轉(zhuǎn)發(fā)下,謝謝。

數(shù)據(jù)文件鏈接 https://pan.baidu.com/s/1I3hi8Lr9IxTgNFJoN4zbag . 提取碼:1234

到此這篇關(guān)于R語言學(xué)習(xí)之火山圖的繪制詳解的文章就介紹到這了,更多相關(guān)R語言繪制火山圖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • R語言中的fivenum與quantile()函數(shù)算法詳解

    R語言中的fivenum與quantile()函數(shù)算法詳解

    這篇文章主要介紹了R語言中的fivenum與quantile()函數(shù)算法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • R語言 如何保留大于或小于特定數(shù)值的行

    R語言 如何保留大于或小于特定數(shù)值的行

    這篇文章主要介紹了R語言實現(xiàn)保留大于或小于特定數(shù)值的行操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • R語言編程學(xué)習(xí)繪制動態(tài)圖實現(xiàn)示例

    R語言編程學(xué)習(xí)繪制動態(tài)圖實現(xiàn)示例

    這篇文章主要介紹了R語言編程學(xué)習(xí)繪制動態(tài)圖實現(xiàn)示例,有需要的的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2021-10-10
  • R語言中aggregate?函數(shù)詳解

    R語言中aggregate?函數(shù)詳解

    這篇文章主要介紹了R語言中aggregate?函數(shù)的相關(guān)資料,aggregate函數(shù)是數(shù)據(jù)處理中常用到的函數(shù),具有強大的功能,可以按照要求把數(shù)據(jù)打組聚合,然后對聚合以后的數(shù)據(jù)進行加和、求平均等各種操作,需要的朋友可以參考下
    2023-04-04
  • R語言的歷史介紹

    R語言的歷史介紹

    在本篇內(nèi)容里小編給大家介紹了關(guān)于R語言的歷史內(nèi)容,有興趣學(xué)習(xí)的朋友可以閱讀下。
    2021-03-03
  • R語言數(shù)據(jù)類型和對象深入講解

    R語言數(shù)據(jù)類型和對象深入講解

    這篇文章主要介紹了R語言數(shù)據(jù)類型和對象深入講解,文中列舉的實例講解的很清楚,有感興趣的同學(xué)可以學(xué)習(xí)下
    2021-03-03
  • R語言 檢驗多重共線性的操作

    R語言 檢驗多重共線性的操作

    這篇文章主要介紹了R語言 檢驗多重共線性的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • R語言ggplot2?title設(shè)置教程(main,axis和legend?titles)

    R語言ggplot2?title設(shè)置教程(main,axis和legend?titles)

    ggplot2是一個強大的作圖工具,它可以讓你不受現(xiàn)有圖形類型的限制,創(chuàng)造出任何有助于解決你所遇到問題的圖形,下面這篇文章主要給大家介紹了關(guān)于R語言ggplot2?title設(shè)置(main,axis和legend?titles)的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • R語言版本升級完全攻略基于Ubuntu

    R語言版本升級完全攻略基于Ubuntu

    這篇文章主要為大家介紹了在Ubuntu上針對不同的版本對R語言版本升級的完全攻略,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2021-11-11
  • R語言實現(xiàn)支持向量機SVM應(yīng)用案例

    R語言實現(xiàn)支持向量機SVM應(yīng)用案例

    本文主要介紹了R語言實現(xiàn)支持向量機SVM應(yīng)用案例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08

最新評論

湘潭市| 南木林县| 鹿泉市| 于田县| 莱阳市| 河南省| 南雄市| 余庆县| 平昌县| 荆门市| 怀仁县| 景谷| 阳泉市| 元氏县| 尖扎县| 邳州市| 盘锦市| 琼中| 海南省| 垣曲县| 济阳县| 新巴尔虎右旗| 洪雅县| 泗洪县| 绵阳市| 扎赉特旗| 牡丹江市| 香港 | 云霄县| 辽阳市| 津市市| 大城县| 舞钢市| 莱州市| 盐津县| 娱乐| 绩溪县| 伊川县| 色达县| 叙永县| 习水县|