You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用ggcuminc在累积发生率图中添加分事件类型的风险表

解决ggcuminc风险表展示细分事件的问题

要让add_risktable()显示细分事件(风险人群、死于黑色素瘤、死于其他原因),需要指定风险表的统计量类型,并对应匹配事件标签。以下是修正后的完整代码及说明:

完整代码

library(MASS)
library(tidyverse)
library(survival)
library(ggsurvfit)

# 数据加载与预处理
data(Melanoma, package = "MASS")
Melanoma <- Melanoma %>%
  mutate(
    status = recode(status, `2` = 0, `1` = 1, `3` = 2),
    status = factor(status, levels = c(0,1,2), labels = c("存活", "死于黑色素瘤", "死于其他原因"))
  )

# 生成累积发生率对象
ci_obj <- cuminc(Surv(time, status) ~ 1, data = Melanoma)

# 绘图并添加细分事件的风险表
ggcuminc(ci_obj, outcome = c("死于黑色素瘤", "死于其他原因")) +
  labs(x = "Days") +
  add_confidence_interval() +
  add_risktable(
    stat = c("n.risk", "cum.event", "cum.event"), # 指定统计项:风险人数、事件1累积数、事件2累积数
    labels = c("风险人群", "死于黑色素瘤", "死于其他原因"), # 对应自定义标签
    event_levels = c("死于黑色素瘤", "死于其他原因"), # 匹配细分事件类型
    risktable_height = 0.2 # 调整风险表高度,避免遮挡主图
  )

关键说明

  • stat = c("n.risk", "cum.event", "cum.event"):明确指定风险表要展示的三类统计内容,分别是当前风险人数、第一个事件的累积发生数、第二个事件的累积发生数。
  • labels:为每个统计项设置对应标签,直接匹配你需要的展示内容。
  • event_levels:指定要关联的细分事件名称,确保cum.event统计量对应正确的事件类型。
  • 预处理时给status添加标签,能让绘图和风险表的文字说明更直观,避免用数字指代事件。

内容的提问来源于stack exchange,提问作者Claudio Bravo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 04:10:04