Cox PH modelini yorumlama

Python ile Survival Analysis

Shae Wang

Senior Data Scientist

Temel tehlikeler

  • Hazard oranı: tehlikenin, temel (baseline) tehlikelere göre ne kadar arttığı/azaldığı.
  • Temel tehlikeler: ortak değişkenlerin temel düzeylerindeki bireylerin riski.
    • Temel $\neq$ ortak değişkenleri 0'a ayarlamak
    • Temel, ortak değişkenleri ortalamalarına ayarlamak demektir (lifelines için medyan)
Python ile Survival Analysis

Temel fonksiyonlar

Temel tehlike fonksiyonu
model.baseline_hazard_.plot()
plt.show()

temel_tehlike

Temel sağkalım fonksiyonu
model.baseline_survival_.plot()
plt.show()

temel_sağkalım

Python ile Survival Analysis

Hazard oranını yorumlama

  • Hazard oranı: $e^{coef}$; ortak değişkenler değiştiğinde tehlikenin ortalama bireye göre ne kadar değiştiği.
Hesaplama Örnek
Katsayı $x$ $0.405$
Hazard oranı $e^x$ $e^{0.405}=1.5$
Tehlike yorumu $e^x-1$ $1.5-1 = 0.5$ -> tehlikede %50 artış
Sağkalım süresi yorumu $\frac{1}{e^x}-1$ $\frac{1}{1.5}-1 = 0.67-1 = -0.23$ -> sağkalımda %23 azalma
Python ile Survival Analysis

Hazard oranını görselleştirme

.plot_partial_effects_on_outcome()

  • covariates (string veya liste): değiştirmek istediğimiz özgün veri setindeki ortak değişken ad(lar)ı.
    • Birden fazla ortak değişken varsa, liste olarak geçin.
  • values (1d veya 2d iterable): ortak değişkenin almasını istediğimiz değerler.
    • Birden fazla ortak değişken varsa, değerleri çift/ikili demetler olarak geçin.
Python ile Survival Analysis

Hazard oranını görselleştirme

Modelin ortak değişkenleri A, B, C; {{1}} değerlerini değiştirmek istiyoruz

  • A: 1, 2
  • B: 3, 4
    model.plot_partial_effects_on_outcome(
        covariates=["A","B"],
        values=[[1,2],
                [3,4]]
    )
    plt.show()
    

plot_partial_effects_on_outcome_hatalı

Hatalı...

Python ile Survival Analysis

Hazard oranını görselleştirme

Modelin ortak değişkenleri A, B, C; şu değerleri değiştirmek istiyoruz:

  • A: 1, 2
  • B: 3, 4
    model.plot_partial_effects_on_outcome(
        covariates=["A","B"],
        values=[[1,3],
                [1,4],
                [2,3],
                [2,4]]
    )
    plt.show()
    

plot_partial_effects_on_outcome_doğru

Doğru!

Python ile Survival Analysis

Hadi pratik yapalım!

Python ile Survival Analysis

Preparing Video For Download...