生存曲线 p值 python_超详细讲解生信SCI中的生存曲线作图,不看后悔系列

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-31 15:16   63   0

原标题:超详细讲解生信SCI中的生存曲线作图,不看后悔系列

在线及个性化精美Kaplan-Meier生存曲线的绘制

大家好,我是阿琛。俗话说,是骡子是马拉出来溜溜。在肿瘤研究中,一个基因的研究价值高不高,或者一种新模型的应用价值好不好,都主要取决于其对患者生存状态的预测能力。良好的预后预测能力,能其明显的脱颖而出;与其他分子或模型相比,具有更高的临床转化与应用价值。在此,阿琛带大家一起学习生存曲线的各种绘制方法。

在线分析工具

巧妇难为无米之炊,分析的第一步自然是数据的来源。目前,对于提供了生存信息的数据库,主要包括以下几个数据库:

1、TCGA数据库

提供了转录组、基因组以及患者的总生存率OS信息,涵盖33种肿瘤研究,其中UCSC Xena网站提供了TCGA数据库泛癌患者的总生存率OS和无病生存率DFS;

2、TCPA数据库(http://tcpaportal.org)

TCGA的蛋白质组数据库,整合了来自TCGA和几个独立的肿瘤研究项目RPPA芯片结果的肿瘤蛋白质谱数据库;

3、TARGET数据库(https://ocg.cancer.gov/programs/target)

一个针对儿童肿瘤研究的数据库,涉及急性淋巴细胞白血病(ALL, Acute Lymphoblastic Leukemia)、急性髓细胞白血病(AML, Acute Myeloid Leukemia)、肾脏肿瘤(KT, Kidney Tumors)等疾病,提供了患者转录组、基因组变化以及相应的OS;

4、SEER数据库(https://seer.cancer.gov/data/)

由美国国家癌症研究所(National Cancer Institute)发起,收集了大约30%的美国人口的癌症诊断、治疗和生存数据,涉及不同组织病理学癌症亚型的发病率,生存率和死亡率数据,是一个相当丰富的临床相关研究的大型数据库。

5、其他

此外,还有ICGC数据库(https://icgc.org/),GEO数据库(https://www.ncbi.nlm.nih.gov/geo/)等,也提供了一些其他研究的信息,自然也包括了相应的预后信息。

▲ ICGC数据库

▲ GEO数据库

而针对肿瘤研究利器的TCGA数据库,许多研究者通过建立各种在线的数据可视化分析网站,供大家使用。其中,比较著名的包括GEPIA(http://gepia.cancer-pku.cn/)和UALCAN(http://ualcan.path.uab.edu/)两大网站。对于这两个网站的使用方法,解螺旋在生信全书体系课程中已经进行了详细的讲解,在此就只做一个简单的介绍。感兴趣的小伙伴可以直接找到相应的课程进行学习。

▲ GEPIA数据库绘制生存曲线操作方法

▲ UALCAN数据库绘制生存曲线操作方法

软件绘制

现成的东西虽好,但终究缺少了那么几分灵气。在线分析工具主要针对TCGA数据集中单个基因的生存预后分析,且数据的更新存在一定的滞后。当我们前期针对多个基因或因素构建了相应的风险模型,想进一步分析该模型对患者生存状态及预后评估时,这些分析工具就显示出其本身的局限性。

下面,我们主要通过两种方法来给大家讲解Kaplan-Meier生存曲线的绘制。

第一种方法:GraphPad Prism绘制生存曲线

1、数据下载与整理

关于TCGA数据的下载与整理,大家可以复习之前的文章“十分钟快速掌握TCGA mRNA及临床数据的下载”。在此,整理好的数据主要包括每个病人的生存时间、生存状态以及分组信息。

2、打开GraphPad Prism软件,选择Survival分析

3、按要求分别输入不同分组的生存数据

4、点击Graphs,即可得到结果

第二种方法:R绘制Kaplan-Meier生存曲线

1、安装和加载R包

#install.packages("survival")

#install.packages("survminer")

library(survival)

library("survminer")

# 载入需要的程辑包:ggplot2

# 载入需要的程辑包:ggpubr

# 载入需要的程辑包:magrittr

在这里,阿琛主要介绍一下如何通过survival包中的survfit函数来拟合生存曲线,构建模型;随后,使用survminer包中的ggsurvplot函数绘制Kaplan-Meier生存曲线。

2、读取数据

setwd("C:Users000Desktopsurvival") #设置工作目录

rt=read.table("risk.txt",header=T,sep=" ") #读取整理好的文件

head(rt) #查看数据

# id futime fustat risk

#1 TCGA-VQ-A8E0 1.539726027 1 high

#2 TCGA-BR-8686 1.306849315 0 low

#3 TCGA-BR-4370 0.002739726 0 high

#4 TCGA-VQ-A927 0.547945205 1 high

#5 TCGA-FP-8631 0.046575342 0 low

#6 TCGA-BR-7704 1.660273973 0 high

3、计算P值及拟合生存曲线

diff = survdiff(Surv(futime, fustat) ~risk,data = rt)

pValue = 1-pchisq(diff$chisq,df=1)

pValue = signif(pValue,4) #显示4位有效数字

pValue = format(pValue, scientific = TRUE) #使用科学计算法

pValue #查看P值

#[1] "2.149e-03" #说明该模型对预后的预测价值 P < 0.001

fit

summary(fit) #查看五年生存率

#Call: survfit(formula = Surv(futime, fustat) ~ risk, data = rt)

# risk=high

# time n.risk n.event survival std.err lower 95% CI upper 95% CI

# 0.00274 184 2 0.989 0.00764 0.9743 1.000

# 0.00822 171 1 0.983 0.00954 0.9648 1.000

# 0.06575 166 1 0.977 0.01117 0.9558 1.000

# 0.08219 165 1 0.971 0.01258 0.9472 0.996

# 0.12329 162 1 0.966 0.01386 0.9387 0.993

# 0.15616 160 1 0.959 0.01503 0.9305 0.989

# risk=low

# time n.risk n.event survival std.err lower 95% CI upper 95% CI

# 0.00274 184 1 0.995 0.00542 0.984 1.000

# 0.14247 167 1 0.989 0.00802 0.973 1.000

# 0.18356 165 1 0.983 0.00996 0.963 1.000

# 0.20822 164 1 0.977 0.01156 0.954 1.000

# 0.22192 162 1 0.971 0.01297 0.946 0.996

4、绘制Kaplan-Meier生存曲线

ggsurvplot(fit, #指定fit拟合对象

data = rt) #指定数据集来源

结果如图所示

下面,我们一起对曲线的相关参数进行设置与修改,以得到一个精美的可用于发表的生存曲线图形。

4.1、添加P值和95%可信区间

ggsurvplot(fit,

data = rt,

pval = paste0("p=",pValue), #添加P值

conf.int = TRUE) #添加95%可信区间

4.2、添加风险表格和中位生存时间线

ggsurvplot(fit,

data = rt,

conf.int = TRUE,

pval = paste0("p=",pValue),

risk.table = TRUE, #添加风险表格

surv.median.line = "hv") #添加中位生存时间线

4.3、设置x轴坐标及相关名称

ggsurvplot(fit,

data = rt,

conf.int = TRUE,

pval = paste0("p=",pValue),

risk.table = TRUE,

surv.median.line = "hv",

xlab="Time(years)", #设置x轴名称

break.time.by = 1, #设置x轴间距

risk.table.title="", #添加图片标题

legend.labs=c("High risk", "Low risk"), #添加标签名称

legend.title="Risk") #添加标签的标题

到此,一张精美的可用于发表的生存曲线图形就绘制完成了,将图片保存成PDF格式即可用于后续文章的结果。

苦逼的2020年,

我们需要更多运气!

期盼天降鸿运,砸中你!

人在家中坐,礼从天上来!

iPhone11究竟花落谁家?

今日便知分晓!!!

心动不如行动!

入群就会有机会!

责任编辑:

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP