Skip to content
Survival Analysis in R
# Start coding here...
library(survival)
install.packages("survminer")
library(survminer)
library(dplyr)Step berikutnya:
data(ovarian)
glimpse(ovarian)
help(ovarian)Step 3:
ovarian$rx <- factor(ovarian$rx, levels = c("1", "2"),
labels = c("A","B"))
ovarian$resid.ds <- factor(ovarian$resid.ds, levels = c("1", "2"),
labels = c("no","yes"))
ovarian$ecog.ps <- factor(ovarian$ecog.ps, levels = c("1", "2"),
labels = c("good","bad"))
hist(ovarian$age)step 4:
ovarian <- ovarian %>% mutate(age_group = ifelse(age >=50, "old", "young"))
ovarian$age_group <- factor(ovarian$age_group)step 5:
surv_object <- Surv(time = ovarian$futime, event=ovarian$fustat)
surv_object
fit1 <- survfit(surv_object ~ rx, data = ovarian)
summary(fit1)
# fit2 <- survfit(surv_object ~ ovarian$resid.ds, data = ovarian)
# ggsurvplot(fit2, data = ovarian, pval = TRUE)step 6 to fit Kaplan-Meier curves:
# # Corrected code
# fit1 <- survfit(Surv(ovarian$futime <- (as.numeric(as.character(ovarian$futime))), ovarian$fustat <- (as.numeric(as.character(ovarian$fustat))) ~ ovarian$rx, data = ovarian[!is.na(ovarian$futime <- (as.numeric(as.character(ovarian$futime)))) & !is.na(ovarian$fustat <-(as.numeric(as.character(ovarian$fustat)))) & !is.na(ovarian$rx),]))
# summary(fit1)
# Corrected code
ovarian$futime <- as.numeric(as.character(ovarian$futime))
ovarian$fustat <- as.numeric(as.character(ovarian$fustat))
fit1 <- survfit(Surv(ovarian$futime, ovarian$fustat) ~ ovarian$rx, data = ovarian[!is.na(ovarian$futime) & !is.na(ovarian$fustat) & !is.na(ovarian$rx),])
summary(fit1)
ggsurvplot(fit1, data = ovarian, pval = TRUE)Fit
# Fit a Cox proportional hazards model
fit.coxph <- coxph(surv_object ~ rx + resid.ds + age_group + ecog.ps,
data = ovarian)
ggforest(fit.coxph, data = ovarian)