观察开始到观察终止的
时间
通常称为
生存时间
(或事件发生的时间)。
癌症研究中两个最重要的评价方法包括:i)
死亡时间
;和ii)无
复发存活时间
,其对应于治疗反应与疾病复发之间的时间。它也被称为无
病生存时间
和无
事件生存时间
。
如上所述,生存分析侧重于直到发生感兴趣事件(复发或死亡)的期望持续时间。
Kaplan-Meier生存评估
Kaplan-Meier(KM)方法是一种非参数方法,用于估计观察到的生存时间的生存概率(Kaplan和Meier,1958)。
生存曲线是管理生存概率与时间的关系曲线,它提供了一个有用的数据总结,可以用来估计诸如中位生存时间之类的衡量指标。
R生存分析
生存分析总结和可视化生存分析结果
示例数据集
我们将使用生存包中提供的肺癌数据。
head(lung)
inst time status age sex ph.ecog ph.karno pat.karno meal.cal wt.loss
1 3 306 2 74 1 1 90 100 1175 NA
2 3 455 2 68 1 0 90 90 1225 15
3 3 1010 1 56 1 0 90 90 NA 15
4 5 210 2 57 1 1 90 60 1150 11
5 1 883 2 60 1 0 100 90 NA 0
6 12 1022 1 74 1 1 50 80 513 0
inst:机构代码
时间:以天为单位的生存时间
状态:状态1 =审查,2 =死亡
年龄:年龄
性别:男= 1女= 2
ph.ecog:ECOG表现评分(0 =正常 5 =死亡)
ph.karno:Karnofsky表现评分(差 = 0 正常= 100)由医师评定
pat.karno:Karnofsky表现评分由患者评估
膳食:餐时消耗的卡路里
wt.loss:过去六个月的体重下降
计算生存曲线:survfit()
我们要按性别来计算生存概率。
函数survfit()可以被用来计算Kaplan-Meier生存估计。
使用函数Surv()创建的生存对象
要计算生存曲线,请输入以下内容:
print(fit)
n events median 0.95LCL 0.95UCL
sex=1 138 112 270 212 310
sex=2 90 53 426 348 550
默认情况下,函数print()显示生存曲线的摘要。它显示观察数,事件数量,中位数生存和中位数的置信区间。
如果要显示生存曲线的更完整摘要,请输入以下内容:
summary(fit)
summary(fit)$table
可视化生存曲线
我们 生成两组受试者的生存曲线。
ggplot(fit,
pval = TRUE, conf.int = TRUE,
risk.table = TRUE,
risk.table.col = "strata",
pval = TRUE,
conf.int = TRUE,
conf.int.style = "step",
xlab = "Time in days",
break.time.by = 200,
ggtheme = theme_light(),
risk.table = "abs_pct",
每组的中位生存时间表示生存概率S(t)为0.5的时间。
使用参数xlim可以缩短生存曲线范围,如下所示:
Log-Rank检验比较生存曲线:survdiff()
对数秩检验是比较两条或更多条生存曲线的最广泛使用的方法。零假设是两组在生存期间没有差异。
可以使用survdiff()如下:
surv_diff
N Observed Expected (O-E)^2/E (O-E)^2/V
sex=1 138 112 91.6 4.55 10.3
sex=2 90 53 73.4 5.68 10.3
Chisq= 10.3 on 1 degrees of freedom, p= 0.00131
存活率差异的对数秩检验给出p = 0.0013的p值,表明性别组在存活方面差异显着。
复杂的生存曲线
在本节中,我们将使用多个因素的组合计算生存曲线。接下来,我们将使用ggsurvplot()输出结果
ggplot(fit,
conf.int = TRUE,
risk.table.col = "strata",
ggtheme = theme_bw(),
可视化输出。下面的图显示了性别变量根据rx&adhere的值的生存曲线。
生存分析是一组数据分析的统计方法,其中感兴趣的结果变量是事件发生之前的时间。
在这篇文章中,我们演示了如何使用两个R软件包来执行和可视化生存分析)。
最受欢迎的见解
1.R语言绘制生存曲线估计|生存分析|如何R作生存曲线图
2.R语言生存分析可视化分析
3.R语言如何在生存分析与Cox回归中计算IDI,NRI指标
4.r语言中使用Bioconductor 分析芯片数据
5.R语言生存分析数据分析可视化案例
6.r语言ggplot2误差棒图快速指南
7.R 语言绘制功能富集泡泡图
8.R语言如何找到患者数据中具有差异的指标?(PLS—DA分析)
9.R语言中的生存分析Survival analysis晚期肺癌患者4例