sim.fmsm  R Documentation 
Simulate changes of state and transition times from a semiMarkov
multistate model fitted using flexsurvreg
.
sim.fmsm( x, trans = NULL, t, newdata = NULL, start = 1, M = 10, tvar = "trans", tcovs = NULL, tidy = FALSE, debug = FALSE )
x 
A model fitted with Alternatively 
trans 
Matrix indicating allowed transitions. See

t 
Time, or vector of times for each of the 
newdata 
A data frame specifying the values of covariates in the
fitted model, other than the transition number. See

start 
Starting state, or vector of starting states for each of the

M 
Number of individual trajectories to simulate. 
tvar 
Variable in the data representing the transition type. Not
required if 
tcovs 
Names of "predictable" timedependent covariates in

tidy 
If 
debug 
Print intermediate outputs: for development use. 
sim.fmsm
relies on the presence of a function to sample random
numbers from the parametric survival distribution used in the fitted model
x
, for example rweibull
for Weibull models. If
x
was fitted using a custom distribution, called dist
say,
then there must be a function called (something like) rdist
either
in the working environment, or supplied through the dfns
argument to
flexsurvreg
. This must be in the same format as standard R
functions such as rweibull
, with first argument n
, and
remaining arguments giving the parameters of the distribution. It must be
vectorised with respect to the parameter arguments.
This function is only valid for semiMarkov ("clockreset") models, though no warning or error is currently given if the model is not of this type. An equivalent for timeinhomogeneous Markov ("clockforward") models has currently not been implemented.
If tidy=TRUE
, a data frame with one row for each simulated transition, giving the individual ID id
, start state start
, end state end
, transition label trans
, time of the transition since the start of the process (time
), and time since the previous transition (delay
).
If tidy=FALSE
, a list of two matrices named st
and t
. The rows of
each matrix represent simulated individuals. The columns of t
contain the times when the individual changes state, to the corresponding
states in st
.
The first columns will always contain the starting states and the starting
times. The last column of t
represents either the time when the
individual moves to an absorbing state, or rightcensoring in a transient
state at the time given in the t
argument to sim.fmsm
.
Christopher Jackson chris.jackson@mrcbsu.cam.ac.uk.
pmatrix.simfs
,totlos.simfs
bexp < flexsurvreg(Surv(years, status) ~ trans, data=bosms3, dist="exp") tmat < rbind(c(NA,1,2),c(NA,NA,3),c(NA,NA,NA)) sim.fmsm(bexp, M=10, t=5, trans=tmat)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.