宝藏知识点!单基因生存分析-最佳截断点选取(cutoff)

许多小伙伴们在做单基因生存分析时候,通常使用中位数或者四分位数等特殊位置为截断点。但是结果往往没有差异甚至毫无意义。
其实呢,并不一定使用中位数为cutoff,必要的时候使用最佳的cutoff。这个时候小果发现,如果找到一个最佳的截断的便可以使生存分析有差异。目前有很多方法去选择:如X-tile软件、R的CatPredi包、cutoff包等,但在这里小果主要给小伙伴们介绍一种方法使用R包survminer中surv_cutpoint()函数进行计算,选择生存分析的最佳截断点,然后绘制生存曲线图,这样得出的结果是有差异的。话不多说,小果带你走一遍。
首先载入数据:
setwd("E:\生信果")surv <- read.table("data.txt",sep = "t",row.names = 1,check.names = F,stringsAsFactors = F,header = T)

接下来计算最佳阶段点:library(survival)library(survminer)res.cut <- surv_cutpoint(surv,time = "time",event = "event",variables = c("GINS2","MCM2","PCNA"))summary(res.cut)

#下面这里小果展示数据的分布进行可视化,以GINS2为例:plot(res.cut, "GINS2", palette = "npg")res.cat <- surv_categorize(res.cut)head(res.cat)
fit <- survfit(Surv(time, event) ~GINS2, data = res.cat)library(survminer)ggsurvplot(fit,data = surv,pval = T,conf.int = TRUE,risk.table = TRUE,risk.table.col = "strata",palette = "jco",size = 1,xlim = c(0,2000),break.time.by = 500,surv.median.line = "hv",ylab = "Survival probability (%)",xlab = "Time (Days)",ncensor.plot = TRUE,ncensor.plot.height = 0.25,risk.table.y.text = FALSE)

至此,单基因有差异的生存曲线图绘制完成了。图中可以看出p<0.0001,有统计学意义。小果在这里也介绍一下生存曲线中的参数,在上述代码中都有标注。小伙伴们多多研究参数的意义,可以根据自己的数据,和想要的样式修改参数,得到自己想要的结果图片。
小果还提供思路设计、定制生信分析、文献思路复现;有需要的小伙伴欢迎直接扫码咨询小果,竭诚为您的科研助力!

定制生信分析
服务器租赁
扫码咨询小果


往期回顾
|
01 |
|
02 |
|
03 |
|
04 |