一文拿捏,如何利用pRRophetic包進(jìn)行藥物敏感性分析?
今天小云給大家?guī)淼姆窒頌槔胮RRophetic包進(jìn)行藥物敏感性分析,小伙伴只需要輸入基因表達(dá)數(shù)據(jù)和化療藥物,就可以進(jìn)行該分析,接下來小云帶大家開始今天的學(xué)習(xí)吧!
1.藥物敏感性分析簡單介紹 小云先簡單的介紹一下如何進(jìn)行藥物敏感性分析?使用癌癥藥物敏感性基因組學(xué) (GDSC;
?https://www.cancerrxgene.org
/) 數(shù)據(jù)庫估計(jì)每位患者對(duì)化療藥物的敏感性。半數(shù)最大抑制濃度 (IC50) 通過 R 中的 pRRophetic 包(
https://github.com/paulgeeleher/pRRophetic
) 進(jìn)行量化,利用IC50來衡量對(duì)藥物的敏感性,比較化療藥物在不同風(fēng)險(xiǎn)組間IC50的差異。趕快和小云一起開啟今天的實(shí)操吧! 2.?pRRophetic 包安裝 小云在安裝該包時(shí)發(fā)現(xiàn)一些問題,接下來小云為小伙伴演示一下該如何安裝該包。 #首先下載pRRophetic 安裝包,直接通過本地安裝 wget -O pRRophetic_0.5.tar.gz
https://osf.io/dwzce/?action=download
或者通過該網(wǎng)址直接下載安裝包,網(wǎng)址:
https://osf.io/5xvsg/wiki/home/
#下載好安裝包后,直接通過以下命令安裝 install.packages("pRRophetic_0.5.tar.gz", repos = NULL, dependencies = TRUE) 安裝成功后,利用pRRopheticPredict函數(shù)進(jìn)行藥物敏感分析,出現(xiàn)以下報(bào)錯(cuò):
出現(xiàn)該報(bào)錯(cuò)主要是R版本的問題,安裝較低版本的R,就可以解決該報(bào)錯(cuò),或者將原代碼中的class(testExprData) != "matrix")全部修改為class(testExprData)[1] != "matrix"), 就可以解決該報(bào)錯(cuò),需要修改好代碼的壓縮包,可以聯(lián)系小云奧! 3.準(zhǔn)備需要的R包 #安裝需要的R包 install.packages("ggplot2") install.packages("tidyverse") install.packages("cowplot") install.packages("ggsignif") install.packages("ggsci") #加載需要的R包 library(pRRophetic) library(ggplot2) library(cowplot) library(ggsignif) library(ggsci) 4.讀取輸入數(shù)據(jù) #EXP.txt基因表達(dá)矩陣,行名為基因名,列名為樣本名 dat <- read.table("EXP.txt",sep = "\t",row.names = 1,header = T,stringsAsFactors = F,check.names = F)
#group.txt,風(fēng)險(xiǎn)評(píng)分高低分組樣本信息文件,第一列為樣本名,第二列為高低分組信息 ann <- read.table("group.txt",sep = "\t",row.names = 1,header = T,stringsAsFactors = F,check.names = F)
ann<-rownames_to_column(ann,var="Sample") #drug.txt,138種化療藥物信息文件 GCP.drug <- read.table("drug.txt",header =F,stringsAsFactors = F) GCP.drug <- GCP.drug$V1
5.藥物敏感性分析 #利用pRRopheticPredict函數(shù)進(jìn)行藥物敏感性分析,testMatrix表示基因表達(dá)矩陣,drug表示化療藥物,可以選擇自己需要的藥物進(jìn)行分析 ?predictedPtype <- pRRopheticPredict(testMatrix = as.matrix(dat), ??????????????????????????????????????????????drug = "Bortezomib", ??????????????????????????????????????????????tissueType = "allSolidTumors", ??????????????????????????????????????????????selection = 1) #將數(shù)據(jù)類型轉(zhuǎn)化為數(shù)據(jù)框? predictedPtype<- as.data.frame(predictedPtype) #將行名轉(zhuǎn)化為列名 predictedPtype<-rownmaes_to_column(predictedPtype,var="Sample") #保存藥物敏感分析結(jié)果文件 write.table(predictedPtype,"Bortezomib_IC50.txt",col.names=T,sep="\t",quote=F) #連接藥物敏感性分析結(jié)果和風(fēng)險(xiǎn)評(píng)分高低分組樣本信息文件 final<-left_join(predictedPtype,ann,by="Sample") #確定繪圖因子順序?????????????????????????? ?final$group<-factor(final$group,levels= c("High","Low")) #繪制顯著差異箱線圖 ggplot(data=final,aes(x=group,y= predictedPtype))+ geom_violin(aes(fill=group))+ geom_boxplot(width=0.2)+ #顯著差異分析 geom_signif(comparisons=list(c("High","Low")), test=t.test, step_increase=0.2, map_signif_level=T)+ scale_fill_npg()+ labs(x="",y="Bortezomib IC50")+ theme_classic() #保存圖片 ggsave("Bortezomib_IC50.pdf")? 6.結(jié)果文件 1.?Bortezomib_IC50.txt 該結(jié)果文件為計(jì)算的藥物敏感分析結(jié)果,第一列為樣本名,第二列為對(duì)應(yīng)的每個(gè)樣本該藥物的IC50的值。
1.?Bortezomib_IC50.pdf 該結(jié)果圖片為化療藥物在不同風(fēng)險(xiǎn)組間IC50的差異分析小提琴圖+箱線圖。
最終小云成功的利用pRRophetic包進(jìn)行了藥物敏感性分析,看起來圖片效果非常不錯(cuò),歡迎大家和小云一起討論學(xué)習(xí)呀!