Paipa REBP
Paipa REBP
Paipa REBP
utilizando el lenguaje R1
El cursillo está diseñado para ser tomado por personas que no tienen
conocimientos acerca del tópico estadı́stico conocido como análisis
de sobrevivencia ni del lenguaje de procesamiento estadı́stico R, y
ha sido estructurado de tal manera de dar una introducción tanto
al análisis de supervivencia, como del lenguaje R, y exponer las
principales herramientas para llevar un análisis de supervivencia
mediante el uso del lenguaje R.
iii
iv Análisis de Sobrevivencia utilizando el Lenguaje R
Prefacio iii
1 Introducción al lenguaje R 1
1.1 Instalación del lenguaje R. . . . . . . . . . . . . . . 3
1.2 Instalación de los paquetes adicionales. . . . . . . . 3
1.3 Ayudas y documentación del R. . . . . . . . . . . . 3
1.4 Acceso a datos internos disponibles. . . . . . . . . . 4
1.5 Acceso a datos externos disponibles. . . . . . . . . . 5
1.6 La opción de asignación. . . . . . . . . . . . . . . . 5
1.7 Verificación de objetos disponibles. . . . . . . . . . 6
1.8 Eliminación de objetos no deseados. . . . . . . . . . 6
1.9 R diferencia las mayúsculas de las minúsculas. . . . 6
1.10 Datos faltantes en R. . . . . . . . . . . . . . . . . . 6
1.11 Comentarios en R. . . . . . . . . . . . . . . . . . . 6
1.12 Creación de datos en R. . . . . . . . . . . . . . . . 7
1.13 Carga y descarga de objetos. . . . . . . . . . . . . . 7
1.14 Envı́o de gráficos a otros programas. . . . . . . . . 8
1.15 Salida del lenguaje R. . . . . . . . . . . . . . . . . . 8
v
vi Análisis de Sobrevivencia utilizando el Lenguaje R
Introducción al lenguaje R
1
2 Análisis de Sobrevivencia utilizando el Lenguaje R
1.11 Comentarios en R.
El lenguaje R admite comentarios. Un comentario comienza con el
carácter numeral (#), considerándose como comentario a todo lo
Rafael Eduardo Borges Peña 7
list(cbind(var1=c(valor1,...,valorn),...,vark=c(valor1,...,valorn)))
Análisis de sobrevivencia
utilizando el lenguaje R
9
10 Análisis de Sobrevivencia utilizando el Lenguaje R
library(survival)
12 Análisis de Sobrevivencia utilizando el Lenguaje R
Surv(time, event)
Introducción al análisis de
sobrevivencia.
19
20 Análisis de Sobrevivencia utilizando el Lenguaje R
Estimación de la función de
sobrevivencia
25
26 Análisis de Sobrevivencia utilizando el Lenguaje R
Grupo
Evento 1 0 Total
Muerte d1 (ti ) d0 (ti ) d (ti )
No muerte r1 (ti ) − d1 (ti ) r0 (ti ) − d0 (ti ) r (ti ) − d (ti )
En riesgo r1 (ti ) r0 (ti ) r (ti )
Bajo la hipótesis nula que asume que las dos funciones de sobre-
vivencia son iguales. En esta fórmula m es el número de tiempos
de ocurrencia de eventos en ambos grupos y wi denota los pesos,
que toman valores distintos dependiendo del test utilizado. En este
curso sólo utilizaremos dos de los casos: el test de Mantel y Haen-
zel, mas conocido como el test de los rangos de logaritmos (log-rank
test) y el test de Peto y Peto. Para una enumeración muy completa
de los distintos test, basados en procesos de conteo (Andersen et
al, 1993, Fleming y Harrington, 1991).
Variable Descripción
orden: Orden de los individuos en la base de datos.
sexofm: Sexo (0 corresponde al sexo femenino y 1 al
sexo masculino)
diabetes: Diabetes mellitus (1 corresponde a un pa-
ciente diabético y 0 a uno no diabético)
meses: Meses de seguimiento en diálisis peritoneal.
censor2: Condición de Censura (1 denota la muerte y
0 denota los datos censurados)
edad: Edad del paciente al comienzo de la diálisis).
quetelet: ı́ndice de Quetelet.
> library(survival)
> attach(dpa)
> print(km1)
o simplemente mediante:
> km1
> km1
> summary(km1)
0.4
0.2
0.0
0 20 40 60 80 100 120
Meses
36 Análisis de Sobrevivencia utilizando el Lenguaje R
Obteniéndose el gráfico:
Rafael Eduardo Borges Peña 37
0.4
0.2
0.0
0 20 40 60 80 100 120
Meses
> survdiff(Surv(meses,censor2)∼diabetes)
Obteniéndose el resultado:
Call:
El modelo de regresión de
Cox
39
40 Análisis de Sobrevivencia utilizando el Lenguaje R
P
Y (t)rj (t)Zi (t)
j j
Z̄ (β, t) = P Y (t)r (t)
i i
i
0
λ (t; Zi (t)) = λj (t) eβ Zi (t)
Los residuos de martingala son muy asimétricos y con una cola muy
larga hacia la derecha, particularmente para datos de supervivencia
para un solo evento.
di ≈ N√
i −Êi
Êi
Call:
coxph(formula = Surv(meses, censor2)∼diabetes + edad + quetelet,
data = dpa, na.action = na.exclude)
Call:
coxph(formula = Surv(meses, censor2) ∼ diabetes + edad + quetelet,
data = dpa, na.action = na.exclude)
Mediante el comando:
> summary(survfit(cox1))
> plot(survfit(cox1),conf.int=FALSE,main=”Gráfico
No. 3. Comparación del ajuste del modelo de Cox \n y el estimador
de KM”,xlab=”Meses”,ylab=”Supervivencia”)
> lines(km1,lty=2)
> legend(70,0.9,legend=c(”Ajuste por Cox”,”Estimador de KM”),
lty=c(1,2))
Obteniéndose la gráfica:
52 Análisis de Sobrevivencia utilizando el Lenguaje R
Estimador de KM
0.6
Supervivencia
0.4
0.2
0.0
0 20 40 60 80 100
Meses
> cox.zph(cox1)
Rafael Eduardo Borges Peña 53
rho chisq p
diabetes 0.0357 0.0808 0.776
edad 0.1165 1.0519 0.305
quetelet -0.0540 0.2278 0.633
GLOBAL NA 1.3791 0.710
De donde se concluye de que no existe evidencia significativa al
5% de que se viole el supuesto de riesgos proporcionales, ni desde
el punto de vista global, ni para cada covariable.
Y toma la forma:
54 Análisis de Sobrevivencia utilizando el Lenguaje R
2
0
−2
9.9 19 26 33 48 60 72 100
Time
Y el gráfico es:
Rafael Eduardo Borges Peña 55
0.05
0.00
−0.05
−0.10
9.9 19 26 33 48 60 72 100
Time
Y el gráfico es:
56 Análisis de Sobrevivencia utilizando el Lenguaje R
0.0
−0.5
9.9 19 26 33 48 60 72 100
Time
> plot(resid(cox1,type=”deviance”),xlab=”indice”,ylab=”residuos
(tipo desvio)”, main=”Gráfico No. 7. Residuos (tipo deviance)”)
1
0
−1
−2
Indice
Obteniéndose el gráfico:
0.00
−0.05
−0.10
−0.15
diabetes
−0.001
−0.002
0 20 40 60 80
edad
0.010
0.005
0.000
−0.005
15 20 25 30 35 40 45
índice de Quetelet
Obteniéndose el gráfico:
0.0
−0.5
−1.0
−1.5
0 20 40 60 80
Edad
0.0
−0.5
−1.0
15 20 25 30 35 40 45
quetelet
Modelos de regresión
paramétricos
63
64 Análisis de Sobrevivencia utilizando el Lenguaje R
donde:
σ es un parámetro de escala.
f (t; λ, γ) = λe−(t−γ)λ y,
h (t; λ, γ) = λ
66 Análisis de Sobrevivencia utilizando el Lenguaje R
f (t; λ) = λe−λt
Distribución Weibull:
El modelo Weibull es una generalización del modelo exponencial. Se
dice que la variable aleatoria T se distribuye como una exponencial
de parámetros α > 0 y λ > 0 si su función de densidad toma la
expresión:
α
f (t; λ, α) = αλ (λt)α−1 e−(λt)
R∞ α
S (t; λ, α) = f (u) du = e−(λt)
t
Distribución normal:
Se dice que la variable aleatoria T se distribuye como una normal
de parámetros µ y σ 2 . Las funciones de distribución y densidad
toman la forma:
³ ´
t−µ
F (t; µ, σ 2 ) = Φnor σ
³ ´
t−µ
f (t; µ, σ 2 ) = σ1 φnor σ
donde:
³ .√ ´
2π e−(z /2) es la función de densidad de la normal
2
φnor (z) = 1
estándar y,
Rz
Φnor = −∞ φnor (w) dw es la función de distribución de la normal
estándar.
Distribución Lognormal:
Decimos que la variable aleatoria T se distribuye como una Lognor-
mal de parámetros µ y σ 2 si su logaritmo se distribuye como una
normal de parámetros µ y σ 2 .
h (t; µ, σ) = σ1 e( )
t−µ
σ
donde:
z
Φsev (z) = 1 − e−e es la función de distribución de la distribución
valor extremo más pequeño estándar.
z)
φsev (z) = e(z−e es la función de densidad de la distribución valor
Rafael Eduardo Borges Peña 69
donde:
z
Φlev (z) = e−e es la función de distribución de la distribución valor
extremo más grande estándar.
z
φlev (z) = e(−z−e ) es la función de densidad de la distribución valor
extremo más grande estándar.
Distribución Logı́stica:
Se dice que una variable aleatoria T se distribuye como una dis-
tribución Logı́stica de parámetros µ y σ si sus funciones de dis-
70 Análisis de Sobrevivencia utilizando el Lenguaje R
donde:
ze
Φlog is (z) = 1+e z es la función de distribución de la distribución
logı́stica estándar.
e z
φlog is (z) = (1+e z )2 es la función de densidad de la distribución
logı́stica estándar.
Distribución Loglogı́stica:
Se dice que la variable aleatoria T se distribuye como una dis-
tribución Loglogı́stica de parámetros µ y σ si log (T ) se distribuye
como una logı́stica de parámetros µ y σ y, sus funciones de dis-
tribución, de densidad y de riesgo toman la forma:
³ ´
log(t)−µ
F (t; µ, σ) = Φlog is σ
,
³ ´
1 log(t)−µ
f (t; µ, σ) = φ
σt log is σ
y,
³ ´
1 log(t)−µ
h (t; µ, σ) = Φ
σt log is σ
Modelo exponencial:
El modelo exponencial puede identificarse si al graficar la función de
riesgo estimada λ̂ (t) versus el tiempo t se observa aproximadamente
una lı́inea recta horizontal.
Modelo Weibull
El modelo Weibull puede identificarse al:
i) Observar una lı́nea recta que corta en el origen al graficar − log Ŝ (t)
versus el tiempo t, donde Ŝ (t) es la función de sobrevivencia esti-
mada.
h i
ii) Obtener una lı́nea recta al graficar log − log Ŝ (t) versus el
tiempo log (t).
Modelo Lognormal
El modelo Lognormal puede identificarse al:
h i
i) Obtener una lı́nea recta al graficar Φ−1 1 − Ŝ (t) versus log (t)
, donde Φ () es la funcı́on de distribución de una normal estándar.
h³ . ´i
ii) Obtener una lı́nea recta al graficar log 1 − Ŝ (t) Ŝ (t) versus
log (t).
Modelo Loglogı́stico
El modelo Loglogı́stico
h i puede observarse al obtener una lı́nea recta
al graficar Logit Ŝ (t) versus log (t).
Para más detalles puede verse los textos de Allison (1995) O Miller
(1982).
74 Análisis de Sobrevivencia utilizando el Lenguaje R
modelo paramétrico.
La cual puede usarse, sin ningún problema, para el caso del tiempo
continuo.
Gráfico No. 13. Ploteo de haz1 versus time1 con curva suavizada
0.6
0.5
0.4
haz1
0.3
0.2
0.1
0.0
0 20 40 60 80 100
time1
Call:
survreg(formula = Surv(meses, censor2) ∼ diabetes + edad + quetelet,
data = dpa, na.action = na.exclude, dist = ”gaussian”)
Coefficients:
(Intercept) diabetes edad quetelet
42.0167886 -14.3060760 -0.6283562 2.0560862
Scale= 32.4998
Call:
survreg(formula = Surv(meses, censor2) ∼ diabetes + edad + quetelet,
data = dpa, na.action = na.exclude, dist = ”gaussian”)
Rafael Eduardo Borges Peña 79
Gaussian distribution
Loglik(model)= -339.4 Loglik(intercept only)= -347.7
Chisq= 16.63 on 3 degrees of freedom, p= 0.00084
Number of Newton-Raphson Iterations: 4
n=233 (13 observations deleted due to missing)
81
82 Análisis de Sobrevivencia utilizando el Lenguaje R
[17] Lawless, J.F. (2003). Statistical Models and Methods for Life-
time Data, 2da Edición. N.Y.: John Wiley & Sons, Inc.
[19] Miller, R.G. (1981). Survival Analysis. N.Y.: John Wiley &
Sons, Inc.