Nothing
## ----setup, include = FALSE----------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ------------------------------------------------------------------------
library(survival)
#Looking at the top 6 rows...
head(lung)
#help(lung) #See the basic information of lung.
## ------------------------------------------------------------------------
lung <- lung[,-1]
## ------------------------------------------------------------------------
numberTrain <- floor(nrow(lung)*0.8)
set.seed(42)
trInd <- sample(1:nrow(lung), numberTrain)
training <- lung[trInd,]
testing <- lung[-trInd,]
## ------------------------------------------------------------------------
#Perform imputation
trMeans <- colMeans(training,na.rm=T)
for(i in 1:ncol(training)){
training[is.na(training[,i]), i] <- trMeans[i]
testing[is.na(testing[,i]), i] <- trMeans[i]
}
## ------------------------------------------------------------------------
formula <- Surv(time,status)~.
## ------------------------------------------------------------------------
formulaSmall <- Surv(time, status)~age+sex
## ------------------------------------------------------------------------
library(MTLR)
fullMod <- mtlr(formula = formula, data = training)
smallMod <- mtlr(formula = formulaSmall, data = training)
#We will print the small model so the output is more compact.
smallMod
## ---- fig.width=7, fig.align="center"------------------------------------
plot(fullMod)
## ------------------------------------------------------------------------
survCurves <- predict(fullMod, testing, type = "survivalcurve")
#survCurves is pretty large so we will look at the first 5 rows/columns.
survCurves[1:5,1:5]
## ---- fig.width=7, fig.height=5, fig.align="center"----------------------
plotcurves(survCurves, 1:10)
## ------------------------------------------------------------------------
#Mean
meanSurv <- predict(fullMod, testing, type = "mean_time")
head(meanSurv)
#Median
medianSurv <- predict(fullMod, testing, type = "median_time")
head(medianSurv)
## ---- echo=FALSE, out.width = '90%', fig.align="center"------------------
knitr::include_graphics("linearExtension.png")
## ------------------------------------------------------------------------
survivalProbs <- predict(fullMod, testing, type = "prob_event")
head(survivalProbs)
#To see what times these probabilities correspond to:
head(testing$time)
## ------------------------------------------------------------------------
mtlr_cv(formula,training, C1_vec = c(0.01,0.1,1,10,100))
## ---- echo=FALSE, out.width = '90%',fig.cap='The "fullstrat" method of cross-fold validation. Here "delta" refers to the feature used to identify censored/uncensored observations.', fig.align="center"----
knitr::include_graphics("crossvalidation.png")
## ------------------------------------------------------------------------
#Recall we are using the lung dataset.
testInd <- create_folds(lung$time, lung$status, nfolds = 5, foldtype = "fullstrat")
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.