Skip to contents

Joint modeling of longitudinal biomarker trajectories and survival outcomes. Links repeated measurements over time to survival endpoints for dynamic risk prediction and personalized medicine applications.

Usage

jointmodeling(
  data,
  id,
  time_longitudinal,
  biomarker,
  survival_time,
  survival_status,
  covariates,
  functional_form = "linear",
  random_effects = "intercept_slope",
  error_structure = "independent",
  survival_model = "cox",
  association_structure = "current_value",
  estimation_method = "bayesian",
  mcmc_chains = 3,
  mcmc_iterations = 12000,
  mcmc_burnin = 2000,
  mcmc_thin = 5,
  dynamic_prediction = TRUE,
  prediction_horizon = "0.5,1,2,3",
  prediction_window = 2,
  internal_validation = TRUE,
  cv_folds = 5,
  discrimination_metrics = TRUE,
  plot_trajectories = TRUE,
  plot_mean_trajectory = TRUE,
  plot_survival_curves = TRUE,
  plot_dynamic_auc = TRUE,
  plot_residuals = FALSE,
  competing_risks = FALSE,
  left_truncation = FALSE,
  time_varying_effects = FALSE,
  multiple_biomarkers,
  baseline_hazard = "unspecified",
  prior_specification = "default",
  convergence_diagnostics = TRUE,
  parallel_computation = TRUE
)

Arguments

data

The data as a data frame in long format (multiple rows per patient).

id

Patient ID for linking longitudinal measurements

time_longitudinal

Time axis for biomarker trajectory

biomarker

Longitudinal biomarker variable

survival_time

Survival time variable

survival_status

Survival event indicator

covariates

Additional predictive variables

functional_form

Longitudinal model specification

random_effects

Random effects specification

error_structure

Within-subject error correlation

survival_model

Survival distribution choice

association_structure

Association structure specification

estimation_method

Estimation approach

mcmc_chains

Parallel MCMC chains

mcmc_iterations

MCMC sampling iterations

mcmc_burnin

MCMC warm-up period

mcmc_thin

MCMC thinning parameter

dynamic_prediction

Enable dynamic prediction

prediction_horizon

Prediction time windows

prediction_window

Prediction look-ahead window

internal_validation

Cross-validation assessment

cv_folds

Cross-validation partitions

discrimination_metrics

Compute discrimination measures

plot_trajectories

Generate trajectory plots

plot_mean_trajectory

Show mean trajectory

plot_survival_curves

Generate survival plots

plot_dynamic_auc

Show discrimination over time

plot_residuals

Generate diagnostic plots

competing_risks

Include competing events

left_truncation

Handle delayed study entry

time_varying_effects

Time-dependent association parameters

multiple_biomarkers

Multiple longitudinal outcomes

baseline_hazard

Baseline hazard modeling

prior_specification

Bayesian prior choice

convergence_diagnostics

MCMC quality assessment

parallel_computation

Enable parallel processing

Value

A results object containing:

results$instructionsa html
results$progressa html
results$errorsa html
results$warningsa html
results$dataSummarya html
results$longitudinalResultsa html
results$survivalResultsa html
results$jointModelResultsa html
results$diagnosticsa html
results$dynamicPredictionsa html
results$validationa html
results$finalResultsa html
results$trajectoryPlotan image
results$meanTrajectoryPlotan image
results$survivalPlotan image
results$dynamicAUCPlotan image
results$residualPlotan image

Details

Note: This analysis can be computationally intensive. Expected runtime: 2-10 minutes depending on data size and model complexity.

Examples

# \donttest{
# Example: PSA trajectory and prostate cancer survival
jointmodeling(
    data = psa_data,
    id = patient_id,
    time_longitudinal = visit_time,
    biomarker = psa_level,
    survival_time = followup_time,
    survival_status = death_status,
    covariates = c("age", "stage"),
    functional_form = "linear"
)
# }