我是靠谱客的博主 愉快面包,这篇文章主要介绍Q&A | 如何用R批量绘制并导出生存曲线图,现在分享给大家,希望可以做个参考。

生存分析

关于如何在R中进行生存分析的问题,在前面的推文中已经详细的介绍过。详见:survminer | 生存分析及其可视化ggsurvplot()生成的结果。很多同学直接使用ggsave()会产生报错。还有一个问题就是当你有好多个基因/临床参数等时,如何批量的进行生存分析。今天这篇推文就详细的给大家讲一下这两个问题。

批量绘制

数据格式

我将surviavl包里的内置数据集colon进行一定的修改作为示例数据使用。

复制代码
1
2
3
4
5
6
#加载包 library("survminer") library("survival") #导入示例数据并查看 colon <- read.csv("colon.csv",row.names = 1) head(colon)
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
> 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的所有变量进行生存分析

复制代码
1
2
3
# 要做生成分析的所有变量 genes <- names(colon)[3:10] genes
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
# 循环并保存图片 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() }

查看一下结果:

c1ab9423f513a330b9447e3490cbe89f.png
输出文件

随便打开一个看看:7d0ed9595098121d2cd77f08168ad22e.png

大功告成啦~

Tips:这里只是用了简单的一个生存曲线图进行示范,如果大家需要更加复杂的生存曲线,只需要更改ggsurvplot()函数的参数即可!


为爱发电不易~如果需要示例数据及代码(当然其实文中都已经写的很详细了)的同学,点赞&打赏任意金额,并在主页添加本人微信发送截图即可。

a72bdcb2d0b9086d72555641ec2cfe68.png

最后

以上就是愉快面包最近收集整理的关于Q&A | 如何用R批量绘制并导出生存曲线图的全部内容,更多相关Q&A内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部