# Commands
for estimating cumulative hazards and
# survival probabilites for the
melanoma data
# Define sex and ulceration as factors (seems to be necessary when
# estimating cumulative hazards and survival probabilities)
melanoma$sex<-factor(melanoma$sex)
melanoma$ulcer<-factor(melanoma$ulcer)
# Compute and plot Nelson-Aalen estimates for females and males (cf. practical exercise 1):
fit.mel.a=survfit(Surv(lifetime,status==1)~sex, data=melanoma, type="fl", error="ts", conf.type="plain")
plot(fit.mel.a, fun="cumhaz", mark.time=F, xlim=c(0,10), xlab="Years after operation", ylab="Cumulative hazard", main="Sex")
# Compute cumulative hazards estimates for females and males based on a Cox regression and plot the estimates on the same plot as the Nelson-Aalen estimates:
cox.mel.a<- coxph(Surv(lifetime,status==1)~sex, data=melanoma)
lines(survfit(cox.mel.a,newdata=data.frame(sex=0)),fun="cumhaz",lty=3)
lines(survfit(cox.mel.a,newdata=data.frame(sex=1)),fun="cumhaz",lty=3)
# Alternative commands for the cumulative hazards estimates based on the Cox regression:
A0=basehaz(cox.mel.a,centered=F)
lines(A0$time,A0$hazard,type='s',lty=2)
lines(A0$time, exp(cox.mel.a$coef[1])*A0$hazard,type='s',lty=2)
# Compute and plot Kaplan-Meier estimates for males and females and estimates of the survival functions based on the Cox regression:
fit.mel.a=survfit(Surv(lifetime,status==1)~sex, data=melanoma, conf.type="plain")
plot(fit.mel.a, mark.time=F, xlim=c(0,10), xlab="Years after operation", main="Sex")
lines(survfit(cox.mel.a,newdata=data.frame(sex=0)),lty=2)
lines(survfit(cox.mel.a,newdata=data.frame(sex=1)),lty=2)
# Compute and plot estimates of survival functions for some combinations of the covariates sex, ulceration and tumor thickness: ?
cox.mel.e<- coxph(Surv(lifetime,status==1)~sex+ulcer+log(thickn,2), data=melanoma)
plot(survfit(cox.mel.e,newdata= data.frame(sex=0,ulcer=1,thickn=1),conf.type="none"),lty=1)
lines(survfit(cox.mel.e,newdata= data.frame(sex=0,ulcer=0,thickn=1),conf.type="none"),lty=2)
lines(survfit(cox.mel.e,newdata= data.frame(sex=0,ulcer=0,thickn=4),conf.type="none"),lty=3)