vlambda博客
学习文章列表

R语言制作可发表的生存曲线

生存分析大家应该都很熟悉,并且在医学领域应用也很广泛,那么如何做一个漂亮的生存曲线却是让人头疼的事情。今天就给大家分享一个可以直接拿来放入文章的生存曲线绘制的R包survminer。

首先,我们看下其安装及依赖包,我们需要安装下面两个包:

Install.packages(“survminer”)Install.packages(“survival”)

接下来我们看下此包的使用,包中主要的核心函数是ggsurvplot。

R语言制作可发表的生存曲线


其中主要的参数:

Fit就是从survival包中计算出来的对象。

Data 如果是使用fit中的数据可以不提供此参数值。

Pval /pval.method一个逻辑值指是否显示P值或者P值的计算方法。

log.rank.weights 主要是选择P的计算方法。默认是1,指的Log-rank方法。其它还包括以下:

R语言制作可发表的生存曲线


pval.method.coord 指的Pval.Method的坐标位置(x,y)

Linetype 主要是用了设置生存曲线的样式包括(1,2)或者("solid","dashed")

conf.int 指是否绘制置信区间。

Risk.table 指的是展示每个时间点的数据,可以说百分比也可以是数量,具体的参数设置:

R语言制作可发表的生存曲线


Cumevents/cumcensor 指展示事件数据或者缺失值。

surv.plot.height/risk.table.height 指的生存曲线和表的高度,默认值0.75/0.25。

还有很多细节的参数可以设置,我们就不一一介绍了。直接看下实例:

.

library("survival")fit<- survfit(Surv(time, status) ~ sex,data = lung) # Drawing survival curvesggsurvplot(fit, data = lung)


 

R语言制作可发表的生存曲线

#自定义文字属性ggsurvplot(fit, data = lung, title = "Survival curves", subtitle = "Based onKaplan-Meier estimates", caption = "created with survminer", font.title = c(16, "bold", "darkblue"), font.subtitle = c(15, "bold.italic", "purple"), font.caption = c(14, "plain", "orange"), font.x= c(14, "bold.italic", "red"), font.y = c(14, "bold.italic", "darkred"), font.tickslab = c(12, "plain", "darkgreen"))

 

R语言制作可发表的生存曲线


 

#显示风险表格,所谓风险表指的是在每个时间点生存的数量/比例ggsurvplot(fit, data = lung, risk.table =TRUE)


 

R语言制作可发表的生存曲线

#自定义表格的属性ggsurvplot(fit, data = lung, ########## risk table #########, risk.table = TRUE, risk.table.title = "Note the risk set sizes", risk.table.subtitle = "and remember about censoring.", risk.table.caption = "source code: website.com", risk.table.height = 0.45)


 

R语言制作可发表的生存曲线

#删失值得绘制ggsurvplot(fit, data = lung, risk.table =TRUE, ncensor.plot = TRUE)


 

R语言制作可发表的生存曲线

 

#自定义ncensor plotggsurvplot(fit, data = lung,ncensor.plot = TRUE, ncensor.plot.title = "Number of censorings", ncensor.plot.subtitle = "over the time.", ncensor.plot.caption = "data available at data.com", ncensor.plot.height = 0.35)


 

R语言制作可发表的生存曲线

#差异分析P值及方法的显示ggsurvplot(fit, data = lung, pval = TRUE,pval.method = TRUE)


 

R语言制作可发表的生存曲线


#自定义P值及方法的展示位置大小ggsurvplot(fit, data = lung, pval = TRUE,pval.method = TRUE, log.rank.weights = "sqrtN", pval.method.coord = c(3, 0.1), pval.method.size = 4)


 

R语言制作可发表的生存曲线

 

欢迎大家学习交流!