我创建了这个模型:

model <- survfit(Surv(time,status)~c$sex)
model

输出为:
Call: survfit(formula = Surv(time, status) ~ c$sex)

             records n.max n.start events median 0.95LCL 0.95UCL
c$sex=female      15    15      15      8    720     517      NA
c$sex=male        28    28      28     23    234     145     712

因此,我想提取男性的中位数和女性的中位数,但不知道如何去做。
这是我的尝试:
>model$median
NULL

>summary(model)$table[, "median"]
c$sex=female c$sex=male
       720.0            234.5

我只想要每个值(“720”和“234.5”),有人可以帮我吗?

提前致谢

最佳答案

这也适用:

> library(survMisc)
> fit <- survfit(Surv(time, status) ~ x, data = aml)
> median(fit)
                median
x=Maintained        31
x=Nonmaintained     23

并且没有名称(即,删除data.frame的结构):
> unname(unlist(median(fit)))
[1] 31 23

如果您还需要置信区间(默认值为“log”),那就很好了:
> median(fit, CI=TRUE)
                median lower upper
x=Maintained        31    13    NA
x=Nonmaintained     23     5    43

关于r - 如何从Survfit对象中提取值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19547912/

10-10 18:47