predict_transitions: Estimates transition probabilities

Description Usage Arguments Value Examples

View source: R/transition_probabilities.R

Description

Estimates transition probabilities of an individual's passage through a multi-state model by discrete event simulation.

Usage

1
2
3
4
predict_transitions(models, newdata, trans_mat, times, start_times = 0,
  tcovs = NULL, N = 1e+05, M = 1000, ci = FALSE,
  ci_margin = 0.95, agelimit = FALSE, agecol = "age",
  agescale = 365.25)

Arguments

models

List of flexsurvreg objects.

newdata

Data frame with covariates of individual to simulate times for. Must contain all fields required by models.

trans_mat

Transition matrix, such as that used in mstate.

times

Times at which to estimate transition probabilities.

start_times

Conditional time for transition probability.

tcovs

As in flexsurv::pmatrix.simfs, this is the names of covariates that need to be incremented by the simulation clock at each transition, such as age when modelled as age at state entry.

N

Number of times to repeat the individual

M

Number of times to run the simulations in order to obtain confidence interval estimates.

ci

Whether to calculate confidence intervals. See flexsurv::pmatrix.simfs for details.

ci_margin

Confidence interval range to use if ci is set to TRUE.

agelimit

Whether to automatically assign people to an 'early death' state. This is useful as otherwise individuals can be assigned unrealistic time-to-events due to the nature of sampling times from a random number distribution. If this value is FALSE then no limit is applied, otherwise provide the time-limit to be used. This limit must be in the same time-scale as the time-to-event models.

agecol

The name of the column in newdata that holds an individual's age.

agescale

Any multiplication to be applied to the age covariate to put it onto the same time-scale as the simulation. This is often useful as time-to-event may be measured on a day-based time-scale while age is typically measured in years.

Value

A data frame with estimates of transition probabilities.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
library(multistateutils)
library(mstate)
library(flexsurv)

# Convert data to long
data(ebmt3)
tmat <- trans.illdeath()
long <- msprep(time=c(NA, 'prtime', 'rfstime'),
               status=c(NA, 'prstat', 'rfsstat'),
               data=ebmt3,
               trans=tmat,
               keep=c('age', 'dissub'))

# Fit parametric models
models <- lapply(1:3, function(i) {
    flexsurvreg(Surv(time, status) ~ age + dissub, data=long, dist='weibull')
})

# New individual to estimate transition probabilities for
newdata <- data.frame(age="20-40", dissub="AML")

# Estimate transition probabilties at 1 year
predict_transitions(models, newdata, tmat, times=365)

# Estimate transition probabilties at 1 year given we know they're alive after 6 months
predict_transitions(models, newdata, tmat, times=365, start_times = 365/2)

stulacy/RDES documentation built on Oct. 10, 2018, 6:24 p.m.