## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ## ----pipeline-diagram, echo = FALSE, out.width = "100%", fig.cap="Diagram of the landmaRk package pipeline"---- knitr::include_graphics(system.file("diagram.svg", package = "landmaRk")) ## ----setup-------------------------------------------------------------------- set.seed(123) library(landmaRk) library(lcmm) library(tidyverse) library(prodlim) ## ----------------------------------------------------------------------------- library(JMbayes2) data("aids") aids$patient <- as.numeric(aids$patient) str(aids) ## ----------------------------------------------------------------------------- # DF with Static covariates aids_dfs <- split_wide_df( aids, ids = "patient", times = "obstime", static = c("Time", "death", "drug", "gender", "prevOI"), dynamic = c("CD4"), measurement_name = "value" ) static <- aids_dfs$df_static head(static) ## ----------------------------------------------------------------------------- # DF with Dynamic covariates dynamic <- aids_dfs$df_dynamic head(dynamic[["CD4"]]) ## ----------------------------------------------------------------------------- landmarking_object <- LandmarkAnalysis( data_static = static, data_dynamic = dynamic, event_indicator = "death", ids = "patient", event_time = "Time", times = "obstime", measurements = "value" ) ## ----------------------------------------------------------------------------- landmarking_object <- landmarking_object |> compute_risk_sets(landmarks = c(6, 8)) landmarking_object ## ----------------------------------------------------------------------------- landmarking_object <- landmarking_object |> fit_survival( formula = Surv(event_time, event_status) ~ drug, landmarks = c(6, 8), horizons = 12 + c(6, 8), method = "coxph", dynamic_covariates = c() ) |> predict_survival( landmarks = c(6, 8), horizons = 12 + c(6, 8) ) ## ----------------------------------------------------------------------------- summary(landmarking_object, type = "survival", landmark = 6, horizon = 18) ## ----------------------------------------------------------------------------- performance_metrics( landmarking_object, landmarks = c(6, 8), horizons = c(18, 20), auc_t = TRUE, c_index = FALSE, h_times = c(3, 6, 12) ) ## ----------------------------------------------------------------------------- landmarking_object <- LandmarkAnalysis( data_static = static, data_dynamic = dynamic, event_indicator = "death", ids = "patient", event_time = "Time", times = "obstime", measurements = "value" ) landmarking_object <- landmarking_object |> compute_risk_sets(landmarks = c(6, 8)) ## ----------------------------------------------------------------------------- landmarking_object <- landmarking_object |> fit_longitudinal( landmarks = c(6, 8), method = "lme4", formula = value ~ prevOI + obstime + (obstime | patient), dynamic_covariates = c("CD4") ) |> predict_longitudinal( landmarks = c(6, 8), method = "lme4", dynamic_covariates = c("CD4") ) |> fit_survival( formula = Surv(event_time, event_status) ~ drug, landmarks = c(6, 8), horizons = 12 + c(6, 8), method = "coxph", dynamic_covariates = c("CD4") ) |> predict_survival( landmarks = c(6, 8), horizons = 12 + c(6, 8) ) ## ----------------------------------------------------------------------------- summary(landmarking_object, type = "longitudinal", landmark = 6, dynamic_covariate = "CD4") ## ----------------------------------------------------------------------------- summary(landmarking_object, type = "survival", landmark = 6, horizon = 18) ## ----------------------------------------------------------------------------- performance_metrics( landmarking_object, landmarks = c(6, 8), horizons = c(18, 20), auc_t = TRUE, c_index = FALSE, h_times = c(3, 6, 12) ) ## ----------------------------------------------------------------------------- landmarking_object <- LandmarkAnalysis( data_static = static, data_dynamic = dynamic, event_indicator = "death", ids = "patient", event_time = "Time", times = "obstime", measurements = "value" ) ## ----------------------------------------------------------------------------- landmarking_object <- landmarking_object |> compute_risk_sets(landmarks = c(6, 8)) |> fit_longitudinal( landmarks = c(6, 8), method = "lcmm", formula = value ~ obstime + prevOI, mixture = ~ obstime + prevOI, random = ~ obstime, subject = "patient", ng = 2, dynamic_covariates = c("CD4"), maxiter = 5000, rep = 25, nwg = TRUE ) |> predict_longitudinal( landmarks = c(6, 8), method = "lcmm", avg = TRUE, include_clusters = FALSE, var.time = "obstime", dynamic_covariates = c("CD4") ) |> fit_survival( formula = Surv(event_time, event_status) ~ drug, landmarks = c(6, 8), horizons = 12 + c(6, 8), method = "coxph", dynamic_covariates = c("CD4"), include_clusters = FALSE ) |> predict_survival( landmarks = c(6, 8), horizons = 12 + c(6, 8), dynamic_covariates = c("CD4"), include_clusters = FALSE ) ## ----------------------------------------------------------------------------- summary(landmarking_object, type = "longitudinal", landmark = 6, dynamic_covariate = "CD4") ## ----------------------------------------------------------------------------- summary(landmarking_object, type = "survival", landmark = 6, horizon = 18) ## ----------------------------------------------------------------------------- performance_metrics( landmarking_object, landmarks = c(6, 8), horizons = c(18, 20), auc_t = TRUE, c_index = FALSE, h_times = c(3, 6, 12) )