R Program ile Hayatta Kalma Analizi
Hayatta kalma analizi, belirli bir olayın ne zaman gerçekleşeceğini tahmin etme ile ilgilidir. Ayrıca, başarısızlık zamanı analizi veya ölüm zamanının analizi olarak da bilinir. Örneğin, gün sayısını tahmin eden kanserli bir insan hayatta kalacak veya mekanik bir sistemin başarısız olacağı zamanı tahmin edecektir.
Hayatta kalma adlı R paketi hayatta kalma analizi yapmak için kullanılır. Bu pakette, girdi verisini bir R formülü olarak alır ve analiz için seçilen değişkenler arasında bir hayatta kalma nesnesi oluşturan Surv () fonksiyonu bulunur. Ardından, analiz için bir arsa oluşturmak için survfit () fonksiyonunu kullanırız.
Aşağıda kullanılan parametrelerin açıklaması -
Y, yanıt değişkenidir.
X, tahmini değişkenidir.
A ve b, sayısal sabitler olan katsayılardır.
Regresyon modelini oluşturmak için kullanılan işlev glm () işlevidir.
Sözdizimi
Lojistik regresyonda glm () işlevi için temel sözdizimi -
Aşağıda kullanılan parametrelerin açıklaması -
Formül, değişkenler arasındaki ilişkiyi gösteren simgedir.
Data, bu değişkenlerin değerlerini veren veri kümesidir.
Aile R nesnesi modelinin ayrıntılarını belirtmektir. Lojistik regresyon için değer binomiyeldir.
Örnek
Dahili veri seti "mtcars", çeşitli motor özelliklerine sahip bir otomobilin farklı modellerini anlatıyor. "Mtcars" veri setinde, iletim modu (otomatik veya manuel) ikili bir değer olan (0 veya 1) sütun am tarafından tanımlanır. "Am" sütunları ile 3 diğer sütun - hp, wt ve cyl arasında lojistik regresyon modeli oluşturabiliriz.
YÜKLEME PAKETİ
install.packages("survival")
SözdizimiR'de hayatta kalma analizi oluşturmak için temel sözdizimi -
Surv(time,event) survfit(formula)
# Kütüphaneyi yükleyin library("survival") # İlk birkaç satıra bas print(head(pbc))
Yukarıdaki kodu uyguladığımızda, aşağıdaki sonucu ve grafiği üretir:
id time status trt age sex ascites hepato spiders edema bili chol 1 1 400 2 1 58.76523 f 1 1 1 1.0 14.5 261 2 2 4500 0 1 56.44627 f 0 1 1 0.0 1.1 302 3 3 1012 2 1 70.07255 m 0 0 0 0.5 1.4 176 4 4 1925 2 1 54.74059 f 0 1 1 0.5 1.8 244 5 5 1504 1 2 38.10541 f 0 1 1 0.0 3.4 279 6 6 2503 2 2 66.25873 f 0 1 0 0.0 0.8 248 albumin copper alk.phos ast trig platelet protime stage 1 2.60 156 1718.0 137.95 172 190 12.2 4 2 4.14 54 7394.8 113.52 88 221 10.6 3 3 3.48 210 516.0 96.10 55 151 12.0 4 4 2.54 64 6121.8 60.63 92 183 10.3 4 5 3.53 143 671.0 113.15 72 136 10.9 3 6 3.98 50 944.0 93.00 63 NA 11.0 3
Yukarıdaki verilerden analizimiz için zaman ve statü düşünüyoruz.
Surv () ve survfit () fonksiyonunun uygulanması
Şimdi Surv () fonksiyonunu yukarıdaki veri setine uygulamaya ve eğilimi gösterecek bir çizim oluşturmaya devam ediyoruz.
# Kütüphaneyi Yükleyin library("survival") # Hayatta Kalma Nesnesini Oluşturun survfit(Surv(pbc$time,pbc$status == 2)~1) # Grafik Dosyasına Bir İsim Verin png(file = "survival.png") # Grafiği çizin plot(survfit(Surv(pbc$time,pbc$status == 2)~1)) # Dosyayı Kaydedin dev.off()
Yukarıdaki kodu uyguladığımızda, aşağıdaki sonucu ve grafiği üretir:
Call: survfit(formula = Surv(pbc$time, pbc$status == 2) ~ 1) n events median 0.95LCL 0.95UCL 418 161 3395 3090 3853
Yukarıdaki grafikteki eğilim, belirli bir gün sayısının sonunda hayatta kalma olasılığının tahmin edilmesine yardımcı olur.
Yorumlar
Yorum Gönder