require(survival)
require(survminer)
require(ggplot2)
require(scales)
require(dplyr)

1. Dataset “diabetic”

Los 197 pacientes en este conjunto de datos fueron una muestra aleatoria del 50% de los pacientes con retinopatía diabética “de alto-riesgo”, como se define en el estudio de retinopatía diabética (DRS). Cada paciente tenía un ojo al azar para el tratamiento con láser y el otro ojo no recibió tratamiento.

Para cada ojo, el evento de interés fue el momento desde el inicio del tratamiento hasta el momento en que la agudeza visual cayó por debajo de 5/200 dos visitas seguidas. Así hay un tiempo de retardo construido-en de aproximadamente 6 meses (las visitas eran cada 3 meses).

Los tiempos de supervivencia en este conjunto de datos son por lo tanto el tiempo real a la ceguera en meses, menos el tiempo mínimo posible al evento (6.5 meses). La censura fue causada por la muerte, abandono o final del estudio.

Las variables utilizadas fueron: “time” como la variable de tiempo y “status” para medir el evento estudiado.

La función ajusta un modelo de supervivencia tomando en cuenta estas dos variables para después hacer una comparación con 5 modelos distintos y ver cuál es el que mejor se ajusta a la curva con Kapllan Meier.

Estos 5 modelos fueron:

data("diabetic")

km_model<-surv_fit(Surv(time, status)~1,diabetic)

A<-ggplot()+
  geom_point(aes(log(km_model$surv),km_model$time))+
  labs(x=expression(hat(S)(t)),y="y",
       title="Exponential diagnosis",
       subtitle = "Straight line with negative slope expected")+
  theme(plot.subtitle = element_text(family = "serif"),
        plot.caption = element_text(family="mono"),
        axis.line = element_line(size = 0.5,
                                 linetype = "solid")
  )

B<-ggplot()+
  geom_point(aes(log(-log(km_model$surv)),log(km_model$time)))+
  labs(x=expression(hat(S)(t)),y="y",
       title="Weibull diagnosis",
       subtitle = "Straight line with positive slope expected")+
  theme(plot.subtitle = element_text(family = "serif"),
        plot.caption = element_text(family="mono"),
        axis.line = element_line(size = 0.5,
                                 linetype = "solid")
  )

C<-ggplot()+
  geom_point(aes(qnorm(1-km_model$surv),log(km_model$time)))+
  labs(x=expression(hat(S)(t)),y="y",
       title="Log Normal diagnosis",
       subtitle = "Straight line with positive slope expected")+
  theme(plot.subtitle = element_text(family = "serif"),
        plot.caption = element_text(family="mono"),
        axis.line = element_line(size = 0.5,
                                 linetype = "solid")
  )

D<-ggplot()+
  geom_point(aes(log(-log(km_model$surv))+1,km_model$time))+
  labs(x=expression(hat(S)(t)),y="y",
       title="Gompertz diagnosis",
       subtitle = "Straight line with positive slope expected")+
  theme(plot.subtitle = element_text(family = "serif"),
        plot.caption = element_text(family="mono"),
        axis.line = element_line(size = 0.5,
                                 linetype = "solid")
  )

E<-ggplot()+
  geom_point(aes(1/(km_model$surv),km_model$time))+
  labs(x=expression(hat(S)(t)),y="y",
       title="Log Logistic diagnosis",
       subtitle = "Straight line with positive slope expected")+
  theme(plot.subtitle = element_text(family = "serif"),
        plot.caption = element_text(family="mono"),
        axis.line = element_line(size = 0.5,
                                 linetype = "solid")
  )

ggarrange(A,C,B,D,E,
          ncol = 2, nrow = 3)

##2. Dataset “cancer”

Supervivencia en pacientes con cáncer pulmonar avanzado del Grupo de Tratamiento del Cáncer del Norte Central. Los puntajes de rendimiento evalúan qué tan bien el paciente puede realizar las actividades diarias habituales.

data("cancer")
km_model<-surv_fit(Surv(time, status)~1,cancer)

Se usó el mismo código que del dataset 1 para ver de igual manera la comparación de los modelos con su curva correpondiente.

##3. Dataset “colon”

Estos son datos de uno de los primeros ensayos exitosos de quimioterapia adyuvante para el cáncer de colon. Levamisol es un compuesto de baja-toxicidad previamente utilizado para tratar las infestaciones de gusanos en los animales; 5-FU es un agente de quimioterapia moderadamente tóxico (como estas cosas). Hay dos registros por persona, uno por recurrencia y otro por muerte.

El estudio se describe originalmente en Laurie (1989). El informe principal se encuentra en Moertel (1990). Este conjunto de datos es más próximo al del informe final de Moertel (1991). Lin (1994) utilizó una versión de los datos con menos tiempo de seguimiento.

data("colon")
km_model<-surv_fit(Surv(time, status)~1,colon)

De igual manera, en este Dataset se usó el primer código para el ajuste de los 5 modelos.