Создать обратную кривую Каплана-Мейера с процентами ответов и временем

Я пытаюсь создать обратную зависимость КМ от времени, которое требуется пациентам для ответа на лекарственную терапию.

Time    response
3   57
4   35
4   85
4   90
5   55
6   65
6   89
6   72
9   97
9   89
9   98
10  99
10  92
13  99
14  50
15  97
18  60
21  70
25  76
28  77
40  82
48  86

Время указывается в днях, а ответ - в процентах. Сначала я думал, что смогу попробовать это, используя анализ выживания, но подумал, что график опасности будет работать лучше. Я не уверен, как это сделать.

Вот ссылка на опубликованную статью, где третий рисунок показывает это. Я еще не эксперт по KM plots, но любая помощь и критика будут высоко оценены!

https://www.researchgate.net/publication/7789803_Bortezomib_therapy_alone_and_in_combination_with_dexamethasone_for_previously_untreated_symptomatic_multiple_myeloma

1 ответ

Для решения вашего вопроса я сначала реорганизовал ваши данные в данные о выживании, к которым я привык. Это одна строка на событие / цензор. Затем я подхожу к модели выживания и строю график КМ.

dt <- as.data.frame(matrix(c(3,57
,4,35
,4,85
,4,90
,5,55
,6,65
,6,89
,6,72
,9,97
,9,89
,9,98
,10,99
,10,92
,13,99
,14,50
,15,97
,18,60
,21,70
,25,76
,28,77
,40,82
,48,86),ncol=2,byrow = TRUE))

colnames(dt) <- c("time","response")

#translate percentage of responders at each time to number of responders if we start with a population of 10000
dt$individuals <- round(10000*sapply((1:nrow(dt)),function(x){prod(dt[1:x,"response"]/100)}))

s <- data.frame(time = with(dt,rep(time, individuals))
                ,event = 1)

library(survival)

sobj <- Surv(s$time, s$event)
fit <- survfit(sobj ~ 1)
plot(fit, fun="event")

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

Другие вопросы по тегам