survplot()in" rms" :风险数量由整个组显示,而不是每条曲线

时间:2016-10-20 21:18:11

标签: r survival-analysis rms

我正在使用makeMap绘制生存曲线。但是,当我使用calcV绘制风险表的数量时,R给了我一些整个数据集,而不是每条曲线,我无法弄清楚原因。

survplot{rms}

n.risk.shown.wrong

例如,在时间= 0时,风险的数量应为7442 3210 3042,现在情节显示为13694,即三组的总和。任何人都可以帮我弄清楚哪里出错了?感谢?

1 个答案:

答案 0 :(得分:1)

@WeihuangWong可能是正确的。我得到的结果与我在survplot中使用第一个示例时的输出相同,但在分类变量周围添加strat()函数会产生预期的输出格式。我还添加了surv=T

n <- 1000
set.seed(731)
age <- 50 + 12*rnorm(n)
label(age) <- "Age"
sex <- factor(sample(c('male','female'), n, TRUE))
cens <- 15*runif(n)
h <- .02*exp(.04*(age-50)+.8*(sex=='female'))
dt <- -log(runif(n))/h
label(dt) <- 'Follow-up Time'
e <- ifelse(dt <= cens,1,0)
dt <- pmin(dt, cens)
units(dt) <- "Year"
dd <- datadist(age, sex)
options(datadist='dd')

f <- cph(Surv(dt,e) ~ strat(sex), x=T,y=T, surv=T)
survplot(f, sex, label.curves = F, n.risk = T)

enter image description here