一文拿捏,如何利用pRRophetic包进行药物敏感性分析?
今天小云给大家带来的分享为利用pRRophetic包进行药物敏感性分析,小伙伴只需要输入基因表达数据和化疗药物,就可以进行该分析,接下来小云带大家开始今天的学习吧!
1.药物敏感性分析简单介绍 小云先简单的介绍一下如何进行药物敏感性分析?使用癌症药物敏感性基因组学 (GDSC;
https://www.cancerrxgene.org
/) 数据库估计每位患者对化疗药物的敏感性。半数最大抑制浓度 (IC50) 通过 R 中的 pRRophetic 包(
https://github.com/paulgeeleher/pRRophetic
) 进行量化,利用IC50来衡量对药物的敏感性,比较化疗药物在不同风险组间IC50的差异。赶快和小云一起开启今天的实操吧! 2. pRRophetic 包安装 小云在安装该包时发现一些问题,接下来小云为小伙伴演示一下该如何安装该包。 #首先下载pRRophetic 安装包,直接通过本地安装 wget -O pRRophetic_0.5.tar.gz
https://osf.io/dwzce/?action=download
或者通过该网址直接下载安装包,网址:
https://osf.io/5xvsg/wiki/home/
#下载好安装包后,直接通过以下命令安装 install.packages("pRRophetic_0.5.tar.gz", repos = NULL, dependencies = TRUE) 安装成功后,利用pRRopheticPredict函数进行药物敏感分析,出现以下报错:
出现该报错主要是R版本的问题,安装较低版本的R,就可以解决该报错,或者将原代码中的class(testExprData) != "matrix")全部修改为class(testExprData)[1] != "matrix"), 就可以解决该报错,需要修改好代码的压缩包,可以联系小云奥! 3.准备需要的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.读取输入数据 #EXP.txt基因表达矩阵,行名为基因名,列名为样本名 dat <- read.table("EXP.txt",sep = "\t",row.names = 1,header = T,stringsAsFactors = F,check.names = F)
#group.txt,风险评分高低分组样本信息文件,第一列为样本名,第二列为高低分组信息 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函数进行药物敏感性分析,testMatrix表示基因表达矩阵,drug表示化疗药物,可以选择自己需要的药物进行分析 predictedPtype <- pRRopheticPredict(testMatrix = as.matrix(dat), drug = "Bortezomib", tissueType = "allSolidTumors", selection = 1) #将数据类型转化为数据框 predictedPtype<- as.data.frame(predictedPtype) #将行名转化为列名 predictedPtype<-rownmaes_to_column(predictedPtype,var="Sample") #保存药物敏感分析结果文件 write.table(predictedPtype,"Bortezomib_IC50.txt",col.names=T,sep="\t",quote=F) #连接药物敏感性分析结果和风险评分高低分组样本信息文件 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.结果文件 1. Bortezomib_IC50.txt 该结果文件为计算的药物敏感分析结果,第一列为样本名,第二列为对应的每个样本该药物的IC50的值。
1. Bortezomib_IC50.pdf 该结果图片为化疗药物在不同风险组间IC50的差异分析小提琴图+箱线图。
最终小云成功的利用pRRophetic包进行了药物敏感性分析,看起来图片效果非常不错,欢迎大家和小云一起讨论学习呀!