赞
踩
关于如何在R中进行生存分析的问题,在前面的推文中已经详细的介绍过。详见:survminer | 生存分析及其可视化ggsurvplot()
生成的结果。很多同学直接使用ggsave()
会产生报错。还有一个问题就是当你有好多个基因/临床参数等时,如何批量的进行生存分析。今天这篇推文就详细的给大家讲一下这两个问题。
我将surviavl
包里的内置数据集colon
进行一定的修改作为示例数据使用。
- #加载包
- library("survminer")
- library("survival")
- #导入示例数据并查看
- colon <- read.csv("colon.csv",row.names = 1)
- head(colon)
- > head(colon)
- study rx sex age obstruct
- 853 1 Obs 1 young 1
- 413 1 Obs 0 young 0
- 140 1 Obs 0 young 1
- 94 1 Lev+5FU 0 young 0
- 580 1 Lev+5FU 0 young 0
- 863 1 Lev 0 young 0
- perfor adhere surg gene1 gene2
- 853 0 1 0 Low Low
- 413 0 0 1 Low Low
- 140 0 0 0 High Low
- 94 0 1 1 High Low
- 580 0 0 0 Low Low
- 863 0 0 0 Low Low
- status time
- 853 1 612
- 413 0 2234
- 140 0 2826
- 94 0 2869
- 580 0 1421
- 863 1 1325
sex~gene2
的所有变量进行生存分析- # 要做生成分析的所有变量
- genes <- names(colon)[3:10]
- genes
- # 循环并保存图片
- for (i in genes){
- print(i)
- fit <- survfit(Surv( time,status) ~ colon[,i], colon)
- p <- ggsurvplot(fit, linetype = "strata",
- pval = TRUE,
- palette = "Dark2",
- legend.labs =c(paste0(i, "=H"), paste0(i, "=L")))
- pdf(paste0(i, "_surv.pdf"),width = 5, height = 5)
- print(p, newpage = FALSE)
- dev.off()
- }
查看一下结果:
随便打开一个看看:
大功告成啦~
“Tips:这里只是用了简单的一个生存曲线图进行示范,如果大家需要更加复杂的生存曲线,只需要更改ggsurvplot()函数的参数即可!
“为爱发电不易~如果需要示例数据及代码(当然其实文中都已经写的很详细了)的同学,点赞&打赏任意金额,并在主页添加本人微信发送截图即可。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。