Le test du log-rank

Analyse de survie en Python

Shae Wang

Senior Data Scientist

Vérification d'hypothèses

  • Une méthode d'inférence statistique

  • Hypothèse nulle $H_0$ : p. ex., les résidents de la Californie et du Nevada ont le même revenu moyen.

  • Hypothèse alternative $H_1$ : p. ex., les résidents de la Californie et du Nevada ont un revenu moyen différent.

  • Valeur p : quelle est la probabilité d'observer ces données si l'hypothèse nulle est vraie ?

Dessin humoristique sur les tests d'hypothèses.

Analyse de survie en Python

Vérification d'hypothèses : test du log-rank

  • Compare les probabilités de survie $S_i$ entre groupes à chaque temps $t$

$H_0$ : $S_A(t)=S_B(t)$

$H_1$ : $S_A(t)\neq S_B(t)$

  • Valeur p : si $S_A(t)=S_B(t)$, quelle est la probabilité d'obtenir nos données ?

Courbes de survie multiples Plusieurs courbes de survie côte à côte.

Analyse de survie en Python

Exécuter le test du log-rank

from lifelines.statistics import logrank_test

logrank_test(durations_A, durations_B, event_observed_A, event_observed_B)
  • .print_summary()
  • .p_value
  • .test_statistic
Analyse de survie en Python

Exemple de test du log-rank

Le programme change‑t‑il quand les bébés commencent à parler ?

t.head(2)
    id  duration  observed
0    1        12         0
1    4         6         1
c.head(2)
    id  duration  observed
0    0        11         1
1    2        14         0
lrt = logrank_test(
    durations_A = t['duration'], 
    durations_B = c['duration'], 
    event_observed_A = t['observed'],
    event_observed_B = c['observed'])
lrt.print_summary()
<lifelines.StatisticalResult: logrank_test>
 null_distribution = chi squared
degrees_of_freedom = 1
         test_name = logrank_test
 test_statistic    p  -log2(p)
           0.09 0.77      0.38
Analyse de survie en Python

À garder en tête…

  • Le test du log-rank est un test d'hypothèse non paramétrique
  • Avec lifelines, les données doivent être censurées à droite (p. ex., sujet 3)
  • La censure doit être non informative
  • Pour un test du log-rank entre $n>2$ groupes, utilisez pairwise_logrank_test() ou multivariate_logrank_test()

Dessin humoristique sur la censure.

Analyse de survie en Python

Passons à la pratique !

Analyse de survie en Python

Preparing Video For Download...