Log-rank-testet

Överlevnadsanalys i Python

Shae Wang

Senior Data Scientist

Hypotestestning

  • En metod för statistisk inferens

  • Nollhypotes $H_0$: t.ex. att invånare i Kalifornien och Nevada har samma genomsnittsinkomst.

  • Alternativhypotes $H_1$: t.ex. att invånare i Kalifornien och Nevada har olika genomsnittsinkomst.

  • P-värde: hur sannolikt är det att data hade uppstått om nollhypotesen vore sann?

Tecknad bild om hypotestestning.

Överlevnadsanalys i Python

Hypotestestning med log-rank

  • Jämför överlevnadssannolikheter $S_i$ mellan grupper vid varje tidpunkt $t$

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

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

  • P-värde: om $S_A(t)=S_B(t)$, hur sannolikt är det att våra data uppstår?

Flera överlevnadskurvor Flera överlevnadskurvor bredvid varandra.

Överlevnadsanalys i Python

Köra log-rank-testet

from lifelines.statistics import logrank_test

logrank_test(durations_A, durations_B, event_observed_A, event_observed_B)
  • .print_summary()
  • .p_value
  • .test_statistic
Överlevnadsanalys i Python

Exempel på log-rank-test

Påverkar programmet när spädbarn börjar prata?

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
Överlevnadsanalys i Python

Tänk på...

  • Log-rank-testet är ett icke-parametriskt hypotestest
  • Med lifelines måste data vara höger-censurerade (t.ex. individ 3)
  • Censureringen måste vara icke-informativ
  • För ett log-rank-test mellan $n>2$ grupper, använd pairwise_logrank_test() eller multivariate_logrank_test()

Tecknad bild om censurering.

Överlevnadsanalys i Python

Nu kör vi en övning!

Överlevnadsanalys i Python

Preparing Video For Download...