# generate example data
set.seed(1234)
p = 4 # number of longitudinal predictors
simdata = simulate_prclmm_data(n = 100, p = p, p.relev = 2,
seed = 123, t.values = c(0, 0.5, 1, 1.5, 2))
# create dataframe with baseline measurements only
baseline.visits = simdata$long.data[which(!duplicated(simdata$long.data$id)),]
df = merge(simdata$surv.data, baseline.visits, by = 'id')
df = df[ , -c(5:6)]
do.bootstrap = FALSE
# IMPORTANT: set do.bootstrap = TRUE to compute the optimism correction!
n.boots = ifelse(do.bootstrap, 100, 0)
more.cores = FALSE
# IMPORTANT: set more.cores = TRUE to speed computations up!
if (!more.cores) n.cores = 2
if (more.cores) {
# identify number of available cores on your machine
n.cores = parallel::detectCores()
if (is.na(n.cores)) n.cores = 2
}
form = as.formula(~ baseline.age + marker1 + marker2
+ marker3 + marker4)
base.pcox = pencox(data = df,
formula = form,
n.boots = n.boots, n.cores = n.cores)
ls(base.pcox)
# compute the performance measures
perf = performance_pencox(fitted_pencox = base.pcox,
metric = 'tdauc', times = 3:5, n.cores = n.cores)
# use metric = 'brier' for the Brier score and metric = 'c' for the
# concordance index
# time-dependent AUC estimates:
ls(perf)
perf$tdAUC
Run the code above in your browser using DataLab