podatki <- read.table("/cloud/project/Poglavje 4/Naloga 1/Zdravilo.csv", header=TRUE, sep=";", dec=",")
head(podatki)
## ID Dnevi Dogodek Zdravilo Starost Oteklina Bilirubin Albumin
## 1 1 2055 2 1 54 0 0.3 4.08
## 2 2 2466 2 2 53 0 0.3 4.00
## 3 3 3611 0 2 56 0 0.3 3.39
## 4 4 994 0 2 58 0 0.4 2.75
## 5 5 1153 0 1 61 0 0.4 3.58
## 6 6 1831 0 1 56 0 0.4 3.72
## Strjevanje
## 1 9.9
## 2 11.0
## 3 10.6
## 4 10.8
## 5 10.4
## 6 10.1
Opis spremenljivk:
podatki$Status <- ifelse(podatki$Dogodek==2, yes=1, no=0)
podatki$ZdraviloF <- factor(podatki$Zdravilo,
levels = c(2, 1),
labels = c("Placebo", "D-Penic."))
podatki$OteklinaF <- factor(podatki$Oteklina,
levels = c(0, 0.5, 1),
labels = c("Brez", "Zmerna", "Večja"))
summary(podatki[c(-1, -3, -4, -6)])
## Dnevi Starost Bilirubin Albumin
## Min. : 41 Min. :26.00 Min. : 0.300 Min. :1.96
## 1st Qu.:1191 1st Qu.:42.00 1st Qu.: 0.800 1st Qu.:3.31
## Median :1840 Median :50.00 Median : 1.350 Median :3.55
## Mean :2006 Mean :50.06 Mean : 3.256 Mean :3.52
## 3rd Qu.:2697 3rd Qu.:57.00 3rd Qu.: 3.425 3rd Qu.:3.80
## Max. :4556 Max. :78.00 Max. :28.000 Max. :4.64
## Strjevanje Status ZdraviloF OteklinaF
## Min. : 9.00 Min. :0.0000 Placebo :154 Brez :263
## 1st Qu.:10.00 1st Qu.:0.0000 D-Penic.:158 Zmerna: 29
## Median :10.60 Median :0.0000 Večja : 20
## Mean :10.73 Mean :0.4006
## 3rd Qu.:11.10 3rd Qu.:1.0000
## Max. :17.10 Max. :1.0000
library(survival)
prež_obj <- Surv(podatki$Dnevi, podatki$Status)
KM_fit <- survfit(prež_obj ~ 1)
summary(KM_fit, times = c(0, 365*(1:12)))
## Call: survfit(formula = prež_obj ~ 1)
##
## time n.risk n.event survival std.err lower 95% CI upper 95% CI
## 0 312 0 1.000 0.0000 1.000 1.000
## 365 290 22 0.929 0.0145 0.902 0.958
## 730 278 11 0.894 0.0174 0.861 0.929
## 1095 240 26 0.809 0.0224 0.766 0.854
## 1460 194 16 0.752 0.0250 0.704 0.802
## 1825 159 10 0.711 0.0268 0.660 0.765
## 2190 130 7 0.677 0.0283 0.624 0.735
## 2555 95 10 0.619 0.0314 0.560 0.683
## 2920 67 6 0.573 0.0342 0.510 0.644
## 3285 47 6 0.511 0.0387 0.441 0.593
## 3650 32 6 0.439 0.0432 0.362 0.532
## 4015 21 3 0.392 0.0463 0.311 0.494
## 4380 8 2 0.341 0.0528 0.251 0.461
KM_fit
## Call: survfit(formula = prež_obj ~ 1)
##
## n events median 0.95LCL 0.95UCL
## [1,] 312 125 3395 3086 3853
library(ggplot2)
library(ggfortify)
autoplot(KM_fit,
ylab="Stopnja preživetja",
xlab="Čas v dnevih",
main="Funkcija preživetja") +
theme_linedraw()
library(survival)
fit <- coxph(prež_obj ~ Starost + OteklinaF + Bilirubin + Albumin + Strjevanje + ZdraviloF,
data = podatki)
summary(fit)
## Call:
## coxph(formula = prež_obj ~ Starost + OteklinaF + Bilirubin +
## Albumin + Strjevanje + ZdraviloF, data = podatki)
##
## n= 312, number of events= 125
##
## coef exp(coef) se(coef) z Pr(>|z|)
## Starost 0.034044 1.034630 0.009467 3.596 0.000323 ***
## OteklinaFZmerna -0.020937 0.979280 0.287959 -0.073 0.942037
## OteklinaFVečja 1.015548 2.760875 0.315480 3.219 0.001286 **
## Bilirubin 0.120515 1.128078 0.015672 7.690 1.47e-14 ***
## Albumin -1.198893 0.301528 0.236062 -5.079 3.80e-07 ***
## Strjevanje 0.262154 1.299727 0.075530 3.471 0.000519 ***
## ZdraviloFD-Penic. 0.108034 1.114086 0.191368 0.565 0.572390
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## exp(coef) exp(-coef) lower .95 upper .95
## Starost 1.0346 0.9665 1.0156 1.0540
## OteklinaFZmerna 0.9793 1.0212 0.5569 1.7219
## OteklinaFVečja 2.7609 0.3622 1.4877 5.1237
## Bilirubin 1.1281 0.8865 1.0940 1.1633
## Albumin 0.3015 3.3164 0.1898 0.4789
## Strjevanje 1.2997 0.7694 1.1209 1.5071
## ZdraviloFD-Penic. 1.1141 0.8976 0.7656 1.6211
##
## Concordance= 0.827 (se = 0.02 )
## Likelihood ratio test= 167 on 7 df, p=<2e-16
## Wald test = 189.2 on 7 df, p=<2e-16
## Score (logrank) test = 309.9 on 7 df, p=<2e-16