我有兴趣为竞争事件生成累积发生率图,其中包括曲线中的刻度/审查标记。我知道您可以在没有竞争风险的情况下使用 1-CSH kaplan meier 方法创建带有刻度/审查标记的图,但这似乎高估了随着时间的推移的风险概率。我想知道是否有人知道在存在竞争风险的情况下向累积发生率图(参见下面的 cuminc() 图)添加刻度/审查标记的方法,或者知道可以解释竞争事件并添加刻度/审查标记的包。我已经在谷歌上搜索了一段时间,但还没有找到一种方法。据我所知,目前还没有办法做到这一点。任何帮助,将不胜感激。 :)
以下是我看过的一些帖子:
2.3.2 单克隆丙种球蛋白病
我已经查看了plot(cuminc())和ggcompetingrisks(ci.cuminc)的文档,但没有看到在曲线上包含刻度/审查标记的参数。
在下面的示例中,我使用卵巢生存数据集,并通过将 fustat 替换为 2 添加一个附加事件(如果它们的未来生存时间为 < 300.
)library(survival)
library(survminer)
library(cmprsk)
library(ggsurvfit)
df <- data.frame(ovarian)
df$fustat2 <- df$fustat
df[df$futime < 300,]$fustat2 <- 2
df$rx <- factor(df$rx, c(1, 2), labels=c('Rx1', 'Rx2'))
# This example is 1-CS KM:
surv.obj <- survfit(Surv(futime, fustat2==1)~rx, data=df)
#plot(surv.obj, fun= function(x) {1 - x}, bty='L', mark.time=TRUE)
plot(surv.obj, fun="event", bty='L', mark.time=TRUE)
# ggsurvfit also produces 1-CS KM curve:
ggsurvfit(surv.obj, type = "risk") + add_censor_mark()
# Cumulative incidence Curve:
ci.cuminc <- cuminc(ftime = df$futime, fstatus= df$fustat2, group = df$rx)
plot(ci.cuminc, lty=c(1, 1, 0, 0), wh=c(-1,-1), ylim=c(0, 0.45))
# Survminer package has ggcompetingrisks()
ggpar(ggcompetingrisks(ci.cuminc[1:2], multiple_panels = FALSE, censor=TRUE, censor.shape="+"), ylab = "Probablity")
您可以使用 ggsurvfit 包来做到这一点。您需要使用
tidycmprsk::cuminc()
来估计 CIF,使用 ggsurvfit::ggcuminc()
来绘制风险曲线。该包导出一个 ggsurvfit::add_censor_mark()
函数来添加审查指标。
在下面的示例中,如果所有受试者没有死于癌症,则他们会同时(24 个月)接受审查,因此所有标记都出现在同一位置。如果有更有趣的审查分布,它看起来会更有趣。
library(ggsurvfit)
#> Loading required package: ggplot2
library(tidycmprsk)
cuminc(Surv(ttdeath, death_cr) ~ trt, trial) %>%
ggcuminc(outcome = "death from cancer") +
add_censor_mark(size = 5) +
scale_ggsurvfit(x = list(breaks = seq(0, 24, by = 6)))
创建于 2024-01-25,使用 reprex v2.0.2