歡迎關注天善智慧, 我們是專注于商業智慧BI, 大資料, 資料分析領域的垂直社區, 學習, 問答、求職一站式搞定!
本文主要利用ggpubr包來探索基因組資料,主要是視覺化TCGA基因組資料的基因表達譜。
library(ggpubr)#載入包TCGA是一個包含大量癌症資料的資料庫, 由Marcin Kosinski創建的RTCGA包可以讓我們很方便的獲取這些資料。 主要有三個包:RTCGA、RTCGA.clininal、RTCGA.mRNA。 安裝方法如下:
#Load the bioconductor installersourcelibrary(RTCGA)
RTCGA包裡的函數expressionTCGA()可以十分方便地從不同資料集中提取基因的表達值, 下面我們將從三個資料集BRCA(乳腺癌)、OV(卵巢癌)、LUSC(肺癌)中提取五個基因的表達值。
library(RTCGA)
查看每個資料集中的樣品數量
nb_samples為了方便, 我們將部分資料集名稱簡化
expr$dataset
接下來繪製圖形:
1、箱線圖
library(ggpubr)
我們可以一次性繪製多個基因, 然後一一查看, 而不用每次寫代碼:
#Creat a list of plots
p$XBP1
p$MUC1
當一次性繪製多個基因時,xlab,ylab,title也可以是一個跟y等長的向量。 接下來就是添加p-value以及顯著性了
my_comparisons也可以查看每個類型中每一個基因的比較:
compare_means(c(GATA3, PTEN, XBP1)~dataset, data = expr)可以通過select以及remove來決定比較那幾個類型,比如這裡我們只比較BRCA和OV
ggboxplot(expr, x="dataset", y="GATA3", title = "GATA3", ylab = "Expression",ggboxplot(expr, x="dataset", y="GATA3", title = "GATA3", ylab = "Expression",通過order來改變各類型在x軸上的順序
ggboxplot(expr, x="dataset", y="GATA3", title = "GATA3", ylab = "Expression",通過rotate=TRUE來變換坐標軸
ggboxplot(expr, x="dataset", y="GATA3", title = "GATA3", ylab = "Expression",通過combine=TRUE來進行分面(類似於facet)
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), ylab = "Expression",通過merge=TRUE或者merge=“axis”將三個類型的plot繪製在一個panel中
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), ylab = "Expression",通過merge=flip利用不同癌症類型進行group
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"),通過add=jitter增加抖動點
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,通過add=dotplot增加dotplot
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"),很多時候我們很像知道箱線圖兩端的資料,我們可以通過label來進行展示
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,2、小提琴圖
ggviolin(expr,x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,通過修改add來更改添加小提琴圖裡的圖形
ggviolin(expr,x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,add有好多選項可以選擇:“mean”, “mean_se”, “mean_sd”, “mean_ci”, “mean_range”, “median”, “median_iqr”, “median_mad”, “median_range”.有興趣的可以自己試試。
3、帶狀圖
ggstripchart(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,4、dotplot
ggdotplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,5、密度圖
ggdensity(expr, x=c("GATA3", "PTEN", "XBP1"), y="..density..",將dataset映射給顏色
ggdensity(expr, x=c("GATA3", "PTEN", "XBP1"), y="..density..", combine = TRUE,將三幅圖整合進一個panel中,並對y軸進行..count..,而不是..density..
ggdensity(expr, x=c("GATA3", "PTEN", "XBP1"), y="..count..", xlab = "Expression",## ## $PTEN## ## $XBP1顏色映射,將x軸變數映射給顏色
ggdensity(expr, x=c("GATA3", "PTEN", "XBP1"), y="..count..", color = ".x.",按dataset進行分面
ggdensity(expr, x=c("GATA3", "PTEN", "XBP1"), y="..count..", color = ".x.",6、長條圖
gghistogram(expr, x=c("GATA3", "PTEN", "XBP1"), y="..density..",## ## $PTEN## ## $XBP1將dataset映射給顏色
gghistogram(expr, x=c("GATA3", "PTEN", "XBP1"), y="..density..", xlab = "Expression",## ## $PTEN## ## $XBP1後面還有一些將幾幅圖整合在一個panel以及分面等大同小異就不講了。
7、Q-Q圖
ggqqplot(expr, x=c("GATA3", "PTEN", "XBP1"), combine = TRUE, size = 0.5)顏色映射
ggqqplot(expr, x=c("GATA3", "PTEN", "XBP1"), combine = TRUE, size = 0.5,天善學院svip正火爆報名中!包含Excel BI、Python3爬蟲案例、Python機器學習、Python資料科學家、大資料體系、資料分析報告、資料分析師體系、深度學習、R語言案例共10套課程,其他課程只需五折即可,歡迎大家關注報名。
本文作者:taoyan 摘自:EasyCharts
p$MUC1當一次性繪製多個基因時,xlab,ylab,title也可以是一個跟y等長的向量。 接下來就是添加p-value以及顯著性了
my_comparisons也可以查看每個類型中每一個基因的比較:
compare_means(c(GATA3, PTEN, XBP1)~dataset, data = expr)可以通過select以及remove來決定比較那幾個類型,比如這裡我們只比較BRCA和OV
ggboxplot(expr, x="dataset", y="GATA3", title = "GATA3", ylab = "Expression",ggboxplot(expr, x="dataset", y="GATA3", title = "GATA3", ylab = "Expression",通過order來改變各類型在x軸上的順序
ggboxplot(expr, x="dataset", y="GATA3", title = "GATA3", ylab = "Expression",通過rotate=TRUE來變換坐標軸
ggboxplot(expr, x="dataset", y="GATA3", title = "GATA3", ylab = "Expression",通過combine=TRUE來進行分面(類似於facet)
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), ylab = "Expression",通過merge=TRUE或者merge=“axis”將三個類型的plot繪製在一個panel中
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), ylab = "Expression",通過merge=flip利用不同癌症類型進行group
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"),通過add=jitter增加抖動點
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,通過add=dotplot增加dotplot
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"),很多時候我們很像知道箱線圖兩端的資料,我們可以通過label來進行展示
ggboxplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,2、小提琴圖
ggviolin(expr,x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,通過修改add來更改添加小提琴圖裡的圖形
ggviolin(expr,x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,add有好多選項可以選擇:“mean”, “mean_se”, “mean_sd”, “mean_ci”, “mean_range”, “median”, “median_iqr”, “median_mad”, “median_range”.有興趣的可以自己試試。
3、帶狀圖
ggstripchart(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,4、dotplot
ggdotplot(expr, x="dataset", y=c("GATA3", "PTEN", "XBP1"), combine = TRUE,5、密度圖
ggdensity(expr, x=c("GATA3", "PTEN", "XBP1"), y="..density..",將dataset映射給顏色
ggdensity(expr, x=c("GATA3", "PTEN", "XBP1"), y="..density..", combine = TRUE,將三幅圖整合進一個panel中,並對y軸進行..count..,而不是..density..
ggdensity(expr, x=c("GATA3", "PTEN", "XBP1"), y="..count..", xlab = "Expression",## ## $PTEN## ## $XBP1顏色映射,將x軸變數映射給顏色
ggdensity(expr, x=c("GATA3", "PTEN", "XBP1"), y="..count..", color = ".x.",按dataset進行分面
ggdensity(expr, x=c("GATA3", "PTEN", "XBP1"), y="..count..", color = ".x.",6、長條圖
gghistogram(expr, x=c("GATA3", "PTEN", "XBP1"), y="..density..",## ## $PTEN## ## $XBP1將dataset映射給顏色
gghistogram(expr, x=c("GATA3", "PTEN", "XBP1"), y="..density..", xlab = "Expression",## ## $PTEN## ## $XBP1後面還有一些將幾幅圖整合在一個panel以及分面等大同小異就不講了。
7、Q-Q圖
ggqqplot(expr, x=c("GATA3", "PTEN", "XBP1"), combine = TRUE, size = 0.5)顏色映射
ggqqplot(expr, x=c("GATA3", "PTEN", "XBP1"), combine = TRUE, size = 0.5,天善學院svip正火爆報名中!包含Excel BI、Python3爬蟲案例、Python機器學習、Python資料科學家、大資料體系、資料分析報告、資料分析師體系、深度學習、R語言案例共10套課程,其他課程只需五折即可,歡迎大家關注報名。
本文作者:taoyan 摘自:EasyCharts