7  Analiza preživetja

7.1 Analiza preživetja – Kaplan-Meierjeva krivulja

Navodila vaje

V datoteki HeartValveSurvival.xlsx so zbrani podatki o pooperativnih komplikacijah pacientov po operacijah menjave srčne zaklopke (Marques De Sá 2007).

Razlaga podatkov:

  • S spremenljivko DATE_STOP so podani datumi, ko so pacienti izstopili iz raziskave oz. ko se je zgodil eden izmed ‘slabih dogodkov’ (smrt, endokarditis, ponovna operacija).

  • Če se je kakšen izmed teh dogodkov zgodil, je označeno v spremenljivki EVENT.

  • V spremenljivki DATE_OP pa so podani datumi prve operacije.

  • S spremenljivko DATE_DIFF smo izračunali razliko med datumom ‘slabega dogodka’ in datumom prve operacije v mesecih.


  1. Določi tabelo preživetja pacientov po operaciji srca.

  2. Določi Kaplan–Meierjevo krivuljo preživetja in oceni, kakšna je možnost preživetja za paciente 5 let po operaciji. Rezultate komentiraj.

  3. V spremenljivki PRE_C so podani še simptomi pacientov glede na srčne težave po lestvici NYHA pred operacijo. Recimo, da so resne težave po lestvici za stopnje od 3 navzgor.

    1. Izriši Kaplan–Meierjeve krivulje glede na to delitev pacientov in izračunaj, ali se ti dve skupini pacientov po času preživetja razlikujeta.
    2. Rezultate komentiraj.
Postopek reševanja

Odpremo datoteko HeartValveSurvival.xlsx v Jamovi z Open.

V programu Jamovi najprej dodamo nov modul v program z ukazom +Modules, kjer izberemo jamovi library. V knjižnici modulov poiščemo modul jsurvival in ga namestimo v program:

Po namestitvi se nam nov modul pokaže v orodni vrstici programa Jamovi.

Sedaj bomo določili tabelo preživetja pacientov po operaciji srca z ukazom Analyses -> Survival -> Single Arm Survival.

Spremenljivko DATE_DIFF prenesemo v Time Elapsed. Določimo Outcome, v katerega prenesemo spremenljivko EVENT, s katero določimo da 1 pomeni, da se je dogodek zgodil (Event Level = 1). Pod razdelkom Survival Tables zapišemo na katerih časovnih intervalih bomo izračunali tabele preživetja. Izbrali bomo časovne intervale na 12 mesecev, od 12 do 60 mesecev.

V rezultatskem oknu se nam izpiše tabela preživetja.

Time pove časovni interval, ki je pretekel od začetka. Number at Risk pove, koliko ljudi je vstopilo v analizo v tem intervalu. Number of Events pa pove, koliko dogodkov se je zgodilo v nekem intervalu. Survival pove, kakšna je verjetnost preživetja po določenem časovnem intervalu. 95 % Confidence Interval pa je interval zaupanja v izračunano mero Survival.

Tako lahko ugotovimo, da je po prvem letu (12 mesecev) skupna verjetnost, da se dogodek (smrt, endokarditis, ponovna operacija) ne bo zgodil (verjetnost preživetja), 95.4 %, po drugem 93.3 %, po 5 letih pa obstaja 86.3 % verjetnost preživetja.

Izriše se nam tudi naslednja tabela:

V tabeli je izračunan povprečni čas preživetja – to je čas, pri katerem se preživetje zmanjša na polovico. V našem primeru do konca časa preživetje ne pade pod 50 %. Kljub temu je ocenjen povprečni čas preživetja 161.3 mesecev. Običajno se podaja medianin čas, ki ga pa v našem primeru ne moremo izračunati, saj je preživetje na koncu naše analize višje od 50 %.

Narišimo še Kaplan-Meierjevo krivuljo tako, da pod razdelkom Plots izberemo izris Survival Plot in KMunicate-Style Plot. Pod Plot Arguments nastavimo končni čas 150 (do kdaj nam Jamovi izriše naš graf).

V desnem oknu se nam izrišeta dva grafa Kaplan-Meierjeve krivulje preživetja.

Iz grafa razberemo, da so na x-osi navedeni podatki o času v mesecih, na y-osi pa verjetnost preživetja do trenutnega časa. Krivulja preživetja je vedno padajoča funkcija. V našem grafu lahko prebiramo verjetnosti preživetja do izbranega časa. Tako lahko npr. ugotovimo, da je po 48 mescih verjetnost preživetja približno 87.5 %, po 96 mesecih je verjetnost preživetja 75 %, po 144 mesecih pa je verjetnost preživetja okrog 60 %.

Spodnji graf KMunicate-Style Plot prav tako prikazuje Kaplan-Meierjevo krivuljo, pod njim pa pripisuje še ostale podatke ob določenem opazovanem času.


Krivulje preživetja lahko med sabo tudi primerjamo, npr. če primerjamo dve skupini pacientov, ki so bili zdravljeni po dveh metodah, ali pa v našem primeru glede na to, ali so pacienti imeli resne težave ali manjše težave pred operacijo glede na lestvico NYHA.

Recimo, da so resne težave po lestvici NYHA pri 3. in 4. stopnji, pri stopnjah NYHA < 3 pa manj resne težave. Tako bomo paciente v našem primeru ločili na dve skupini pacientov glede na spremenljivko PRE_C, če je PRE_C > 2, je skupina z resnimi težavami, sicer pa z manj resnimi težavami. Zato bomo ustvarili bomo novo spremenljivko, ki bo imela vrednost 1 v primeru PRE_C > 2 in 0 sicer.

Novo spremenljivko NYHA_01 ustvarimo z ukazom Data -> Transform.

V oknu Transformed variable poimenujemo novo spremenljivko NYHA_01, kot Source variable izberemo spremenljivko PRE_C in pod using transform izberemo Create New Transform …

Poimenujemo novo kodiranje z imenom po NYHA lestvici in z gumbom Add recode condition določimo, kako se bodo vrednosti kodirale in sicer če je PRE_C > 2 potem bo vrednost spremenljivke enaka 1, če je manjše pa naj bo vrednost 0.

V zavihku Data View se pojavi nova spremenljivka NYHA_01.

Da bi primerjali krivulji preživetja pri obeh skupinah glede na NYHA_01 izvedemo Kaplan-Meierjevo analizo preživetja. To naredimo z ukazom Analyses -> Survival -> Survival Analysis.

Spremenljivko DATE_DIFF prenesemo v Time Elapsed. Določimo Outcome, v katerega prenesemo spremenljivko EVENT, s katero določimo da 1 pomeni, da se je dogodek zgodil (Event Level = 1). Kot spremenljivko primerjave pod Explantory Variable izberemo novo spremenljivko NYHA_01. Pod razdelkom Plots izberemo izris Survival Plot in KMunicate-Style Plot. Pod Plot Arguments nastavimo končni čas 150 (do kdaj nam Jamovi izriše naš graf).

V desnem oknu Results se izrišejo rezultati naše analize. Na izrisanih grafih dobimo v tem primeru dve Kaplan-Meierjevi krivulji preživetja - za vsako skupino primerjave ena krivulja.

Zelena krivulja predstavlja Kaplan-Meierjevo krivuljo preživetja tistih pacientov, ki so pred operacijo imeli resne težave (NYHA_01 = 1), medtem ko rdeča Kaplan-Meierjeva krivulja preživetja prikazuje paciente, ki pred operacijo niso imeli težav oziroma so bile manjše (NYHA_01 = 0). Že iz grafa krivulji preživetja lahko ugotovimo, da se dogodki v primeru pacientov z manjšimi težavami pojavljajo kasneje kot v primeru pacientov z resnimi težavami.

To dodatno potrdimo z izvedbo Log-rank statističnega testa, ki se izpiše pri prvem grafu izrisa Kaplan-Meierjevih krivulj.

Testna statistika pove, da je razlika med krivuljami preživetja pri pacientih z resnimi težavami pred operacijo in pacientih z manjšimi težavami pred operacijo statistično značilna (p = 0.015).

Končne ugotovitve

Analiza preživetja se ukvarja z analizo časovnih dogodkov. Tabela preživetja nam poda verjetnosti preživetja in ostale statistike v primeru vnaprej določenih časovnih intervalov. S Kaplan-Meierjimi krivuljami preživetja pa opisujemo verjetnost preživetja pacienta do danega časa in so tabele preživetja narejene glede na časovne intervale med enim in drugim dogodkom iz podatkov.

V našem primeru smo analizirali pojavnost slabih dogodkov (smrt, endocarditis, ponovna operacija) pri pacientih po operaciji srčne zaklopke. S Kaplan-Meierjevo analizo smo ugotovili, da je po 48 mesecih verjetnost preživetja približno 87.5 %, po 96 mesecih je verjetnost preživetja 75 %, po 144 mesecih pa je verjetnost preživetja približno 60 %.

Povprečni čas preživetja (v našem primeru, da se dogodek ne zgodi) je ocenjen na 161.3 mesecev. Medianin čas v našem primeru ne moremo izračunati, saj je verjetnost, da se dogodek ne zgodi, na koncu naše analize višja od 50 %.

Dodatno smo z analizo Kaplan-Meierjevih krivulj preživetja ugotovili, da obstaja statistično značilna razlika med krivuljami preživetja pri pacientih z resnimi težavami pred operacijo v primerjavi s pacienti z manjšimi težavami pred operacijo (p = 0.015). V prvi skupini je pojavnost dogodkov hitrejša.

7.2 Analiza preživetja – Coxov regresijski model

Navodila vaje

Obravnavaj podatke vaje iz pog. 7.1 še s Coxovim regresijskim modelom.

  1. Podatke enako pripravi kot pri prejšnji vaji.

  2. Izvedi modeliranje krivulje preživetja glede na spremenljivko starost:

    1. Izvedi Coxov regresijski model s spremenljivko age.
    2. Interpretiraj rezultate.
  3. V regresijski model vstavi še kategorijsko spremenljivko PRE_C, ki opisuje srčne težave pacientov po NYHA in smo jo že definirali pri prejšnji vaji.

    1. Izvedi Coxov regresijski model.
    2. Komentiraj rezultate tega modela.
Postopek reševanja

Odpremo datoteko iz pog. 7.1 .

Za izvedbo Coxovega regresijskega modela uporabimo ukaz Analyses -> Survival -> Survival Analysis for Continuous Variable.

S Coxovo regresijo modeliramo razmerje med tveganji za pojav slabega dogodka (v našem primeru smrti, endokarditisa ali ponovne operacije) glede na faktorje tveganja. V našem primeru je faktor tveganja, ki ga preučujemo starost v spremenljivki age. Časovna spremenljivka je v našem primeru DATE_DIFF, statusna spremenljivka EVENT, kjer dogodek definiramo z vrednostjo 1. Podatke v oknu Survival Analysis for Continuous Explanatory izpolnimo, kot je prikazano na sliki:

V rezultatskem oknu se izvede Coxova regresijska analiza. Zanima nas tabela, ki je prikazana v nadaljevanju:

Iz tabele lahko razberemo, da je povprečna starost enaka 47.2 let. Regresijski koeficient je v našem primeru enak 1.02. To pomeni, da se tveganje za slabe dogodke z višanjem starosti povečuje z vsakim letom starosti za 1.02-krat. Ker interval zaupanja ne vsebuje vrednosti 1.0, je to povečanje statistično značilno, kar je tudi izračunano v tabeli (p = 0.006).


V Coxov regresijski model bomo sedaj poleg starosti uvrstili tudi skupino pacienta glede na srčne bolečine po NYHA, kot smo jih definirali že pri vaji 7.1. Ko definiramo novo spremenljivko NYHA_01, ponovno izvedemo izračun regresijskega modela z izvedbo ukaza Analyses -> Survival -> Multivariable Survival Analysis.

Coxov regresijski model definiramo kot je prikazano na spodnji sliki. Ker je spremenljivka NYHA_01 kategorijska, jo vpišemo pod Explanatory Variables, spremenljivko age pa pod Continuous Explanatory Variable.

V rezultatskem oknu se nam izpišejo rezultati Coxove regresije.

V dobljeni tabeli lahko iz stolpca HR (multivariable) razberemo, da je razmerje med tveganji pri spremenljivki starost (Age) enako 1.02, kar pomeni, da se z vsakim letom starosti tveganje za slab dogodek poveča za 2.0 %. Ker interval zaupanja ne vsebuje 1.0, je povečanje statistično značilno.

Pri spremenljivki NYHA_01, ki je kategorijska, pa ugotovimo, da je tveganje za slab dogodek 1.72-krat večje v primeru druge skupine (NYHA_01 = 1), ki ima resne težave, v primerjavi s prvo skupino pacientov (NYHA_01 = 0), ki so imeli manjše težave ali pa jih sploh niso imeli. Povečano tveganje je statistično značilno (p = 0.013).

Razmerje med tveganji 1.72 pri dveh skupinah lahko prevedemo tudi na krivulje preživetja. To pomeni, da je (preživetje druge skupine) = (preživetje prve skupine)\(^{1.72}\). Tako lahko izračunamo eno preživetje iz drugega.

Končne ugotovitve

S Coxovo regresijo modeliramo razmerje med tveganji za časovni pojav dogodkov glede na faktorje tveganja. Osnovna predpostavka Coxove regresije je, da je razmerje med tveganji odvisno od faktorjev tveganja in se s časom ne spreminja (je konstantno).

V našem primeru smo izvedli dva Coxova regresijska modela. V prvem primeru smo preučevali starost kot faktor tveganja za krivulje preživetja, v drugem modelu pa smo starosti dodali še kategorijsko spremenljivko, ki je ločevala paciente na dve skupini: skupino z večjimi težavami pred operacijo in skupino z manjšimi težavami.

V prvem modelu smo ugotovili, da je starost statistično pomemben faktor tveganja za pojav slabega dogodka (smrt, endokarditis, ponovna operacija). Pokazali smo, da se tveganje za slabe dogodke povečuje za vsako leto starosti za 1.02-krat in je statistično značilno (p = 0.006).

V drugem modelu, ko smo dodali v model tudi dve skupini pacientov glede na srčne težave po NYHA, smo ugotovili, da tako starost kot skupina NYHA statistično pomembno vplivata na tveganje za pojav slabih dogodkov. V tem primeru je razmerje med tveganji pri spremenljivki starost enako 1.02 in je statistično značilno (p = 0.005), kar pomeni, da se z vsakim letom starosti tveganje za slab dogodek poveča za 2.0 %. Tudi skupina NYHA statistično značilno vpliva na tveganje za slab dogodek (p = 0.013) in sicer tako, da je tveganje za pojav slabega dogodka 1.72-krat večje v primeru skupine z večjo stopnjo težav po NYHA v primerjavi s skupino pacientov z manjšo stopnjo težav po NYHA.