Estimar una probabilidad de supervivencia en R

14

Basado en una muestra de tiempos de supervivencia, me gustaría estimar la probabilidad de sobrevivir al tiempo , para algunos específicos , utilizando el estimador de Kaplan-Meier. ¿Es posible hacer esto en ? Tenga en cuenta que no es necesariamente un tiempo de evento.nttRt

usuario7064
fuente
1
Por supuesto: vea la función survfit () del paquete de supervivencia [escriba help (package = "survival")]
Stéphane Laurent
3
@Stephane Laurent: la función surfit () genera la supervivencia estimada en los momentos del evento. Pero me gustaría tener un procedimiento automático para calcular esa supervivencia en cualquier momento t. Gracias ...
user7064
Luego use approxfun ()
Stéphane Laurent
puedo tener un ejemplo?
user7064

Respuestas:

23

Puede usar la salida de la survfitfunción del survivalpaquete y dársela a stepfun.

km <- survfit(Surv(time, status)~1, data=veteran)
survest <- stepfun(km$time, c(1, km$surv))

Ahora survestes una función que se puede evaluar en cualquier momento.

> survest(0:100)
  [1] 1.0000000 0.9854015 0.9781022 0.9708029 0.9635036 0.9635036 0.9635036
  [8] 0.9416058 0.9124088 0.9124088 0.8978102 0.8905109 0.8759124 0.8613139
 [15] 0.8613139 0.8467153 0.8394161 0.8394161 0.8175182 0.8029197 0.7883212
 [22] 0.7737226 0.7664234 0.7664234 0.7518248 0.7299270 0.7299270 0.7225540
 [29] 0.7225540 0.7151810 0.7004350 0.6856890 0.6856890 0.6783160 0.6783160
 [36] 0.6709430 0.6635700 0.6635700 0.6635700 0.6635700 0.6635700 0.6635700
 [43] 0.6561970 0.6488240 0.6414510 0.6340780 0.6340780 0.6340780 0.6267050
 [50] 0.6193320 0.6193320 0.5972130 0.5750940 0.5677210 0.5529750 0.5529750
 [57] 0.5456020 0.5456020 0.5456020 0.5382290 0.5382290 0.5308560 0.5308560
 [64] 0.5234830 0.5234830 0.5234830 0.5234830 0.5234830 0.5234830 0.5234830
 [71] 0.5234830 0.5234830 0.5161100 0.5087370 0.5087370 0.5087370 0.5087370
 [78] 0.5087370 0.5087370 0.5087370 0.4939910 0.4939910 0.4866180 0.4866180
 [85] 0.4791316 0.4791316 0.4791316 0.4716451 0.4716451 0.4716451 0.4640380
 [92] 0.4640380 0.4564308 0.4564308 0.4564308 0.4412164 0.4412164 0.4412164
 [99] 0.4412164 0.4257351 0.4179945
Brian Diggs
fuente
Surreal tiene un problema, busca una respuesta en StackExchange, encuentra la misma pregunta y se da cuenta de que fue usted quien la respondió hace casi 7 años ...
Brian Diggs,
7

Se puede pasar un parámetro de tiempo a la función de resumen del objeto survfit:

summary(km, times=100)

También se puede pasar un vector:

summary(km, times=0:100)
bensentropía
fuente