Постройте только две кривые (не все) в выводе сурфита в R

У меня есть набор данных о выживаемости с ковариатом (подтип) в 5 группах. Мне удалось построить 5 групп, используя:

km.type <- survfit(SurvObj ~ SubType, data = data, conf.type = "log-log")
plot(km.type, mark.time=FALSE)

Я хотел бы отображать только 2 группы вместо всех 5 групп. Есть какой-либо способ сделать это?


person Shan Cheung    schedule 07.08.2015    source источник
comment
Можете ли вы включить dput(data), чтобы мы могли воспроизвести ваши результаты?   -  person mlegge    schedule 07.08.2015


Ответы (1)


Вы можете подгруппировать данные до, во время или после подбора модели выживания.

library('survival')

summary(aml)
# time            status                   x     
# Min.   :  5.00   Min.   :0.0000   Maintained   :11  
# 1st Qu.: 12.50   1st Qu.:1.0000   Nonmaintained:12  
# Median : 23.00   Median :1.0000                     
# Mean   : 29.48   Mean   :0.7826                     
# 3rd Qu.: 33.50   3rd Qu.:1.0000                     
# Max.   :161.00   Max.   :1.0000                    

## before
dd <- aml[aml$x == 'Maintained', ]
fit <- survfit(Surv(time, status) ~ x, data = dd)
plot(fit, conf.int = FALSE)

## during
fit <- survfit(Surv(time, status) ~ x, data = aml, subset = x == 'Maintained')
## or
fit <- survfit(Surv(time, status) ~ x, data = aml[aml$x == 'Maintained', ])
plot(fit, conf.int = FALSE)

## after
fit <- survfit(Surv(time, status) ~ x, data = aml)
plot(fit, col = c('black','transparent'), conf.int = FALSE)

где col - вектор цветов для каждой из групп по порядку.

Все идентичны:

введите здесь описание изображения

person rawr    schedule 07.08.2015
comment
Очень полный ответ. Большое спасибо! - person Shan Cheung; 07.08.2015