GenVisR包:突變類型不在waterfall函數(shù)指定范圍榴嗅?

GenVisR包是一個用于基因組可視化的包。為我們提供了多種用于展示基因組突變陶舞、基因突變等圖像嗽测,包括我們熟知的基因突變瀑布圖等。今天介紹該包中的waterfall函數(shù)功能肿孵。

在學(xué)習(xí)該包的使用時论咏,發(fā)現(xiàn)網(wǎng)上有許多不錯的介紹該包用法的博文,已經(jīng)詳細(xì)介紹了基因突變瀑布圖繪制的詳細(xì)參數(shù),但是大多都是基于該函數(shù)中作者定義的MAF/MGI格式進(jìn)行講解:

MAF/MGI format

所以突變的類型僅限于表格中展示的,但是實際上振定,我們經(jīng)常會遇到表格以外的突變類型箍土,那我們要怎么辦呢?
GenVisR的waterfall函數(shù)filetype中除了MAF/MGI還提供了第三種“Custom”即為自定義葵硕。這種類型為我們提供了操作性更強的繪圖手段眉抬。

GenVisR包的下載

if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("GenVisR", version = "3.8")

waterfall函數(shù)的使用

GenVisR包為我們提供了waterfall函數(shù)使用的示例贯吓。

# Load GenVisR and set seed
library(GenVisR)
# Plot only genes with mutations in 6% or more of samples
waterfall(brcaMAF, mainRecurCutoff = 0.06)
brcaMAF_Cutoff0.06

當(dāng)然你可以顯示指定的基因:

# Plot only the specified genes
waterfall(brcaMAF, plotGenes = c("PIK3CA", "TP53", "USH2A", "MLL3", "BRCA1"))
waterfall_specified_genes

或者顯示樣本更多的臨床信息:

# Create clinical data
subtype <- c("lumA", "lumB", "her2", "basal", "normal")
subtype <- sample(subtype, 50, replace = TRUE)
age <- c("20-30", "31-50", "51-60", "61+")
age <- sample(age, 50, replace = TRUE)
sample <- as.character(unique(brcaMAF$Tumor_Sample_Barcode))
clinical <- as.data.frame(cbind(sample, subtype, age))

# Melt the clinical data into 'long' format.
library(reshape2)
clinical <- melt(clinical, id.vars = c("sample"))

# Run waterfall
waterfall(brcaMAF, clinDat = clinical, clinVarCol = c(lumA = "blue4", lumB = "deepskyblue", 
    her2 = "hotpink2", basal = "firebrick2", normal = "green4", `20-30` = "#ddd1e7", 
    `31-50` = "#bba3d0", `51-60` = "#9975b9", `61+` = "#7647a2"), plotGenes = c("PIK3CA", 
    "TP53", "USH2A", "MLL3", "BRCA1"), clinLegCol = 2, clinVarOrder = c("lumA", 
    "lumB", "her2", "basal", "normal", "20-30", "31-50", "51-60", "61+"))
waterfall_included_clinicalinfor

上述的代碼,大家在GenVisR包的手冊中都可以查看蜀变。

接下來悄谐,我們介紹一下如果你的數(shù)據(jù)突變類型與GenVisR要求的不一樣,包含了更多的信息時候應(yīng)該怎么辦库北?

首先我們了解一下輸入文件的格式爬舰,非常簡單,3列即可——樣品名稱寒瓦、基因symbol情屹、突變類型:

data_format

要注意的是表頭名字,waterfall的自定義模式要求了三列的名字必須為:sample杂腰,gene垃你,variant_class。
可以對原始數(shù)據(jù)進(jìn)行修改也可以在R中重新設(shè)置表頭喂很。
如果你的數(shù)據(jù)還包含了其他信息惜颇,不用刪除,保留即可少辣。只要確保你的數(shù)據(jù)中含有按照要求命名的這三列信息即可凌摄。

library(GenVisR)
#import data
Dat<-read.table('~/Desktop/waterfalldata.txt',header=T,stringsAsFactors = F,check.names = F,sep='\t’)
#change header
colnames(Dat)<-c('sample', 'gene','variant_class’)

按要求調(diào)整好數(shù)據(jù)格式之后,我們就要進(jìn)行繪圖毒坛。主要是兩個參數(shù)的變化望伦,第一個fileType選擇‘Custom’,另外我們要設(shè)定variant_class的順序煎殷。如果你有明確的前后順序可以給予確定的順序屯伞,要記得把數(shù)據(jù)中所有的突變類型都要輸入。如果你無所謂先后順序豪直,你可以參考下列代碼劣摇,即按照數(shù)據(jù)中突變類型出現(xiàn)的先后順序為最終的排序順序。

#plot
waterfall(Dat,fileType = 'Custom',variant_class_order = levels(factor(Dat$variant_class)))

然后你就可以得到你想要的瀑布圖了弓乙。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末末融,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子暇韧,更是在濱河造成了極大的恐慌勾习,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件懈玻,死亡現(xiàn)場離奇詭異巧婶,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進(jìn)店門艺栈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來英岭,“玉大人,你說我怎么就攤上這事湿右∽缑茫” “怎么了?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵毅人,是天一觀的道長吭狡。 經(jīng)常有香客問我,道長堰塌,這世上最難降的妖魔是什么赵刑? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮场刑,結(jié)果婚禮上般此,老公的妹妹穿的比我還像新娘。我一直安慰自己牵现,他們只是感情好铐懊,可當(dāng)我...
    茶點故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著瞎疼,像睡著了一般科乎。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上贼急,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天茅茂,我揣著相機與錄音,去河邊找鬼太抓。 笑死空闲,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的走敌。 我是一名探鬼主播碴倾,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼掉丽!你這毒婦竟也來了跌榔?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤捶障,失蹤者是張志新(化名)和其女友劉穎僧须,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體项炼,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡皆辽,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年柑蛇,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片驱闷。...
    茶點故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖空免,靈堂內(nèi)的尸體忽然破棺而出空另,到底是詐尸還是另有隱情,我是刑警寧澤蹋砚,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布扼菠,位于F島的核電站,受9級特大地震影響坝咐,放射性物質(zhì)發(fā)生泄漏循榆。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一墨坚、第九天 我趴在偏房一處隱蔽的房頂上張望秧饮。 院中可真熱鬧,春花似錦泽篮、人聲如沸盗尸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽泼各。三九已至,卻和暖如春亏拉,著一層夾襖步出監(jiān)牢的瞬間扣蜻,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工及塘, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留莽使,地道東北人。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓磷蛹,卻偏偏與公主長得像吮旅,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子味咳,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,713評論 2 354

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

  • php usleep() 函數(shù)延遲代碼執(zhí)行若干微秒庇勃。 unpack() 函數(shù)從二進(jìn)制字符串對數(shù)據(jù)進(jìn)行解包。 uni...
    思夢PHP閱讀 1,984評論 1 24
  • 總結(jié)了一些開發(fā)中常用的函數(shù): usleep() //函數(shù)延遲代碼執(zhí)行若干微秒槽驶。 unpack() //函數(shù)從二進(jìn)制...
    ADL2022閱讀 454評論 0 3
  • PHP常用函數(shù)大全 usleep() 函數(shù)延遲代碼執(zhí)行若干微秒责嚷。 unpack() 函數(shù)從二進(jìn)制字符串對數(shù)據(jù)進(jìn)行解...
    上街買菜丶迷倒老太閱讀 1,369評論 0 20
  • 1 文件目錄如下: 2 其中 main.php 如下: 3 Animal.php如下: 4 輸出如下: __aut...
    TTWP_8閱讀 161評論 0 0
  • 后山村的富貴老漢,算起來是村里最命苦的男人了掂铐,打小父母雙亡罕拂,吃百家飯長大揍异,好不容易娶個老婆,沒過幾年爆班,得癌癥死了衷掷。...
    老仲聊齋閱讀 282評論 2 3