生存分析中如何使用最佳阈值进行分组

本文记录了:

  • 在生存分析中如何通过survminer包进行最佳阈值分组。

1. 查看示例数据“myeloma”

# 1. Example data: myeloma------------------------------------------------------
View(myeloma)
示例数据 myeloma

2. 最佳阈值分组

对变量【DEPDC1】进行最佳阈值分组(可同时确定多个变量的最佳阈值,例如variables = c("vari1", "vari2"),此处仅展示一个变量),分组标签为【Low】和【High】,并将分组标签转变为因子。
注意

  1. surv_cutpoint()函数中variables参数指定的变量名不能含有空格,否则会无法分组。
  2. 之所以将分组标签转变为因子,是因为在R语言中cox分析的HR默认是按字母进行排序。按照字母排序时,High是第一组,Low是第二组,如果HR < 1,是指Low组相对于High组是一个保护因素。我的习惯是指定第一组和第二组。
# 2. Determine the optimal cutpoint of variables("DEPDC1") and categorize-------
res.cat <- surv_cutpoint(myeloma, time = "time", event = "event", variables = "DEPDC1") %>%
           surv_categorize(labels = c("Low", "High"))
res.cat$DEPDC1 <- factor(res.cat$DEPDC1, ordered = TRUE, levels = c("Low", "High"))
最佳阈值分组情况

3. 作生存曲线图

# 3. Fit survival curves and visualize------------------------------------------
fit <- survfit(Surv(time, event) ~ DEPDC1, data = res.cat)

ggsurvplot(fit, data = res.cat, 
           pval = TRUE,risk.table = TRUE)

我的代码:
https://github.com/wPencil/MyNotes/blob/ec15223e9976a59c839f8e2a51fd79ab9479e092/R/survival_analysis/optimal_cutpoint.R

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容