> Statistiques > Tests statistiques > Courbes de survie
Courbes de survie
survival : package qui permet d'étudier les courbes de survies (ou tout autre problème assimilé, comme la fiabilité de matériels). On a une population d'individus que l'on suit, et on regarde l'apparition pour chaque individu d'un événement unique.
Faire library(survival).
Définition d'un objet Surv : :
- définition d'objets survival à partir des données : surv <- Surv(time = fr$time, event = fr$event) :
- time : temps des événements.
- event : événement : ca peut être la mort ou alors le right censoring (abandon du suivi de l'individu).
- l'event peut être codé de différentes façons : 0/1, TRUE/FALSE, 1/2 (avec à chaque fois vivant/mort, vivant si right censoring).
- l'objet renvoyé est un vecteur de classe Surv, mais en fait, derrière c'est une matrice avec le temps et le statut (que l'on peut avoir avec as.matrix(surv)).
Estimateur de Kaplan-Meier :
- fit <- survfit(surv ~ 1) : permet de faire un fitting Kaplan-Meier (méthode de maximum de vraisemblance) sur l'objet Surv.
- l'objet renvoyé est de la classe survfit et a notamment les champs :
- fit$time : les temps où il y a des événements.
- fit$n.risk : le nombre de sujets à risque au temps t.
- fit$n.event : le nombre de sujets morts au temps t.
- fit$n.censor : le nombre de sujets abandonnés au temps t.
- plot(fit) : trace la courbe de Kaplan Meyer avec son intervalle de confiance à 0.95 (les temps auxquels on a du censoring sont marqués par un trait vertical).
- fit <- survfit(surv ~ 1, conf.int = 0.99) : permet de modifier le niveau de l'intervalle de confiance.
- fit <- survfit(surv ~ fact) : fait un fitting par valeur du facteur donné. Donc si 2 valeurs, 2 fittings pour donner 2 courbes.
- quand plus d'un facteur, par défaut, plot n'affiche pas les intervalles de confiance, mais on peut le forcer à le faire : plot(fit, conf.int = TRUE, col = c("blue", "red")).
- on peut obtenir la valeur prédite de la courbe de survie pour un t donné par : summary(fit, time = 100)
Comparaison de la survie de 2 populations par le test de Mantel-Haenzel (log rank test), pour une variable explicative catégorique :
- survdiff(surv ~ fact) : teste si il y a une difference entre les différentes populations pour la survie.
- survdiff repose sur une estimation asymptotique, donc qui peut être invalide si l'échantillon est très petit (< 10).
coxph :
- pour le fitting d'un modèle de cox (effets proportionnels).
Copyright Aymeric Duclert
programmer en R, tutoriel R, graphes en R