千家信息网

如何用R语言进行KM生存分析

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇"如何用R语言进行KM生存分析"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"如何
千家信息网最后更新 2025年01月19日如何用R语言进行KM生存分析

这篇"如何用R语言进行KM生存分析"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"如何用R语言进行KM生存分析"文章吧。

R是数据分析常用的软件之一,通过各种功能强大的R包,可以简单方便的实现各种分析。在R语言中,能够进行生存分析的R包很多,survival和survminer是其中最基本的两个,survival负责分析,survimner负责可视化,二者相结合,可以轻松实现生存分析。具体过程如下

1. 准备生存数据

对于每个个体而言,其生存数据会出现两种情况,第一种是观测到生存时间,通常用1表示,第二种则是删失。通常用0表示。survival自带了一个测试数据lung

每一行代表一个样本,time表示生存时间,status表示删失情况,这里只有1和2两种取值,默认排序后的第一个level对应的值为删失,这里则为1表示删失。其他列为样本对应的性别,年龄等基本信息。

2. 进行生存分析

这里根据性别这个二分类变量,采用KM算法来估计生存曲线,代码如下(summary结果只显示部分)

> library("survival")> library("survminer")> kmfit<-survfit(Surv(time, status) ~ sex, data =  lung)> summary(kmfit)Call: survfit(formula = Surv(time, status) ~ sex, data = lung)                sex=1  time n.risk n.event survival std.err lower 95% CI upper 95% CI   11    138       3   0.9783  0.0124       0.9542        1.000   12    135       1   0.9710  0.0143       0.9434        0.999   13    134       2   0.9565  0.0174       0.9231        0.991   15    132       1   0.9493  0.0187       0.9134        0.987   26    131       1   0.9420  0.0199       0.9038        0.982   30    130       1   0.9348  0.0210       0.8945        0.977

从kmfit中summary可以看到已经包含了每个时间点的生存概率,删失等信息,通过这些信息,完全可以自己写代码来画图。为了方便,我们直接采用survminer中的函数来进行可视化。

3. 分析结果的可视化

最基本的可视化方式如下

library("survminer")ggsurvplot(kmfit,              pval = TRUE, conf.int = TRUE,              risk.table = TRUE,               risk.table.col = "strata",               linetype = "strata",               surv.median.line = "hv",               ggtheme = theme_bw(),               palette = c("#E7B800", "#2E9FDF"))

以上就是关于"如何用R语言进行KM生存分析"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。

0