Training courses

Online and in-person training courses led by experienced and research active instructors

Resources

Tutorials

Joint longitudinal-survival models with time-dependent effects (non-proportional hazards)

In this post we’ll focus on how to model time-dependent effects (non-proportional hazards), specifically within a joint longitudinal-survival model. Now joint models are becoming commonplace in medical research, but as always, the fundamentals still matter, and indeed are often ignored. We’re going to look at how to account for time-dependency in both baseline covariates in […]
Read more

Tutorials

Survival analysis with interval censoring

Interval censoring occurs when we don’t know the exact time an event occurred, only that it occurred within a particular time interval. Such data is common in ophthalmology and dentistry, where events are only picked up at scheduled appointments, but they actually occurred at some point since the previous visit. Arguably, we could say all survival data […]
Read more

Tutorials

Relative survival analysis

Relative survival models are predominantly used in population based cancer epidemiology (Dickman et al. 2004), where interest lies in modelling and quantifying the excess mortality in a population with a particular disease, compared to a reference population, appropriately matched on things like age, gender and calendar time. One of the benefits of the approach is […]
Read more

Tutorials

Flexible parametric survival analysis with frailty

This example takes a look at incorporating a frailty, or random intercept, into a flexible parametric survival model, and how to fit them in Stata. First we’ll use merlin to estimate our model, and then the more user-friendly wrapper function stmixed. More details on these models can be found in the following papers: Crowther MJ, Look MP, Riley […]
Read more

Tutorials

A user-defined/custom hazard model

This tutorial will illustrate some of the more advanced capabilities of merlin when modelling survival data, but with the aim of using an accessible example. During my PhD, Paul Lambert and I developed stgenreg in Stata for modelling survival data with a general user-specified hazard function, with the generality achieved by using numerical integration to calculate the cumulative hazard […]
Read more

Tutorials

Joint longitudinal and competing risks models: Simulation, estimation and prediction

This post takes a look at an extension of the standard joint longitudinal-survival model, which is to incorporate competing risks. Let’s start by formally defining the model. We will assume a continuous longitudinal outcome, $$y_{i}(t) = m_{i}(t) \epsilon_{i}(t)$$ where $$m_{i}(t) = X_{1i}(t)\beta_{1} + Z_{i}(t)b_{i}$$ and \(\epsilon_{i}(t)\) is our normally distributed residual variability. We call \(m_{i}(t)\) our […]
Read more

Tutorials

An introduction to joint modelling of longitudinal and survival data

This post gives a gentle introduction to the joint longitudinal-survival model framework, and covers how to estimate them using our merlin command in Stata. A joint model consists of a continuous, repeatedly measured (longitudinal) outcome, and a time-to-event, with the two models linked by random effects, or functions of them. Let’s formally define everything we need. For […]
Read more

Tutorials

Joint frailty models for recurrent and terminal events

In this post we’re going to take a look at joint frailty models, and how to fit them with our merlin command. Importantly, we’ll also discuss how to interpret the results. Joint frailty models An area of intense research in recent years is in the field of joint frailty models, which has become the commonly used name for […]
Read more

Tutorials

Simulation, modelling and prediction with a non-linear covariate effect in survival analysis

Let’s begin. There will be a single continuous covariate, representing age, with a non-linear effect influencing survival. We’ll simulate survival times under a data-generating model that incorporates a non-linear effect of age. We’ll then fit some models accounting for the non-linear effect of age, and finally make predictions for specified values of age. Sounds simple, […]
Read more

Tutorials

Defining a transition matrix for multi-state modelling

In this post we’ll take a look at how to define a custom transition matrix for use with our multistate package in Stata. The transition matrix A transition matrix governs the movement of a process between possible states. Within multi-state survival analysis, and particularly, the implementation of multi-state models in Stata, the transition matrix contains the most […]
Read more

Tutorials

multistate v4.4.0: semi-parametric multi-state modelling

The headlines: predictms now supports the Cox model as a transition model, estimated using merlin or stmerlin Predictions from a multi-state Cox model are implemented using a simulation approach Supported predictions from a multi-state Cox model include transition probabilities, probability, and length of stay, los Let’s take a look at what we can now do with multistate and in particular, the predictms command. We’ll […]
Read more

Tutorials

Simulating survival data with a continuous time-varying covariate…the right way

In this post we’ll take a look at how to simulate survival data with a continuous, time-varying covariate. The aim is to simulate from a data-generating mechanism appropriate for evaluating a joint longitudinal-survival model. We’ll use the survsim command to simulate the survival times, and the merlin command to fit the corresponding true model. Let’s assume a proportional hazards […]
Read more
Resources