Survival In R Flashcards
Quel package pour gérer les dates ?
Lubridate
source: https://www.emilyzabor.com/survival-analysis-in-r.html
Comment calculer un intervalle de temps avec lubridate ?
Opérateur %--%
pour calculer instant1-instant2
source: https://www.emilyzabor.com/survival-analysis-in-r.html
Comment convertir un intervalle de temps avec lubridate ?
intervalle /dyears(1)
Quelles vérifications pour s’assurer que les données sont cohérentes ?
summary(df$os_delay)
- ggplot (df, aes(X=os_delay, fill=factor(os_event)))+
geom_histogram()
Comment modéliser la survie dans r?
survfit2(Surv(time, status) ~ 1, data = lung)
code pour plot Kaplan Meier avec ggsurvit (et labels, intervalle de confiance et tables de risques)
s2 |>
ggsurvfit() +
labs(
x = "Days",
y = "Overall survival probability"
) +
add_confidence_interval() +
add_risktable(risktable_stats = "n.risk")
comment modifier l’échelle des y pour qu’elle soit bien entre 0 et 1?
... +
scale_y_continous(limits = c(0,1)) + ...
Comment modifier l’échelle des x et personnaliser les séparations de l’axe?
... +
scale_x_continuous (
limits = c(0,15),
breaks = seq(0,15,5)) +
...
comment estimer la probabilité de survie après x années?
summary(survfit2(Surv(time, status) ~ 1, data = lung), times = x)
x = le nombre d’années pour laquelle on veut connaître la probabilité de
pourquoi la médiane de survie est plus appropriée que la moyenne de survie?
Parce que la survie ne suit pas une distribution gaussienne
comment représenter la survie dans un beau tableau
survfit(Surv(time, status) ~ 1, data = lung) |>
tbl_survfit(
times = 365.25,
label_header = "**1-year survival (95% CI)**"
)
comment extraire la médiane de survie?
call à survfit2(...)
renvoie la médiane entre autre information
comment représenter la médiane de survie dans un beau tableau?
survfit(Surv(time, status) ~ 1, data = lung) |>
tbl_survfit(
probs = 0.5,
label_header = "**Median survival (95% CI)**"
)
quel test statistique permet de comparer la survie entre différents groupes?
log rank ratio
comment faire un test log rank dans r, avec le package survival
?
survdiff(Surv(time, status) ~ sex, data = lung)
interprétation: si p < 0.05, alors différence significative entre les 2
comment ajouter la p-value à la courbe de Kaplan-Meier
... + add_pvalue()
définition de hazard dans un cox regression model
taux d’un évènement à un temps t
quelles sont les 2 hypothèses implicites que fait un modèle de cox?
- la censure est indépendante de la variable étudiée
- le hazard est proportionnel entre les groupes (i.e. il ne varie pas dans le temps entre les groupes)
avec le package survival
, écris le code pour calculer et afficher le HR pour sex
dans le data frame lung
coxph(Surv(time, status) ~ sex, data = lung) |>
tbl_regression(exp = TRUE)
comment interpréter un HR = 2?
Un HR de 2 signifie que le risque d’événement pour le groupe d’intérêt est deux fois plus élevé que pour le groupe de référence