¿Hay alguna forma de obtener intervalos de confianza para las razones de riesgo de supervivencia en R?
En STATA con stmh
puedo obtener tasas de razón estratificadas entre dos grupos en un análisis de supervivencia, así como obtener un intervalo de confianza del 95%, el chi-cuadrado y el valor p para esa razón. ¿Existe algo similar en R?
Hasta ahora he avanzado hasta aquí. Utilizando el conjunto de datos lung
del paquete survival
library(tidyverse)
library(survival)
head(lung)
Obtuve esto:
inst | time | status | age | sex | ph.ecog | ph.karno | pat.karno | meal.cal | wt.loss |
---|---|---|---|---|---|---|---|---|---|
3 | 306 | 2 | 74 | 1 | 1 | 90 | 100 | 1175 | NA |
3 | 455 | 2 | 68 | 1 | 0 | 90 | 90 | 1225 | 15 |
3 | 1010 | 1 | 56 | 1 | 0 | 90 | 90 | NA | 15 |
5 | 210 | 2 | 57 | 1 | 1 | 90 | 60 | 1150 | 11 |
1 | 883 | 2 | 60 | 1 | 0 | 100 | 90 | NA | 0 |
12 | 1022 | 1 | 74 | 1 | 1 | 50 | 80 | 513 | 0 |
I've found `survRate` from `biostat3` which can give stratified event rate information
library(biostat3)
survRate(Surv(time, status) ~ sex, data=lung)
Obtuve esto:
| | tstop | event | rate | lower | upper |
|--------|-------|-------|-------------|-------------|-------------|
| sex=1 | 1 | 39086 | 0.002865476 | 0.002359424 | 0.003447912 |
| sex=2 | 2 | 30507 | 0.001737306 | 0.001301362 | 0.002272439 |
```R
And can get the rate ratio by extracting the rate elements
Obtenga la tasa para el sexo 1
sex_1 <- survRate(Surv(time, status) ~ sex, data=lung) %>%
filter(sex == 1) %>%
purrr::pluck("rate")
Obtenga la tasa para el sexo 2
sex_2 <- survRate(Surv(time, status) ~ sex, data=lung) %>%
filter(sex == 2) %>%
purrr::pluck("rate")
Obtenga la razón
sex_2 / sex_1
Obtuve esto: 0.6062888
Esto es un buen comienzo, pero en STATA con `stmh` también puedo obtener un intervalo de confianza del 95%, chi-cuadrado y valor p para esa razón. ¿Existe algo similar en R?
davy.ai
Sí, hay funciones similares en R que pueden proporcionarte información similar. Una de las funciones es
coxph
del paquetesurvival
, que puede realizar una regresión de riesgos proporcionales de Cox estratificada y dar como resultado la razón de riesgo, su intervalo de confianza del 95% y el valor p. Aquí tienes un ejemplo:“`{r}
Ajustar un modelo de riesgos proporcionales de Cox con el sexo como una variable de estratificación
fit <- coxph(Surv(tiempo, estado) ~ sexo + ph.ecog, data = pulmones)
Obtener la razón de riesgo, su intervalo de confianza y el valor p
summary(fit)
En este ejemplo, puedes observar que la razón de riesgo para
sexo2
(en comparación consexo1
) es de 0.5972, y su intervalo de confianza del 95% es (0.4333, 0.8243). El valor p para la hipótesis nula de no efecto del sexo es de 0.0011. El paquetesurvival
también cuenta con otras funciones, comosurvdiff
, que pueden realizar una prueba de log-rank estratificada y dar como resultado su estadístico de prueba asociado, los grados de libertad y el valor p correspondiente.