simrec {simrec} | R Documentation |
simrec
Description
Simulation of recurrent event data for non-constant baseline hazard (total-time model)
This function allows simulation of recurrent event data following the multiplicative
intensity model described in Andersen and Gill [1] with the baseline hazard being a
function of the total/calendar time. To induce between-subject-heterogeneity a random
effect covariate (frailty term) can be incorporated. Data for individual i
are generated
according to the intensity process
Y_i(t) * \lambda_0(t)* Z_i *exp(\beta^t X_i),
where X_i
defines the covariate vector and \beta
the regression coefficient vector.
\lambda_0(t)
denotes the baseline hazard, being a function of the total/calendar
time t
, and Y_i(t)
the predictable process
that equals one as long as individual i
is under observation and at risk for experiencing events.
Z_i
denotes the frailty variable with (Z_i)_i
iid with E(Z_i)=1
and
Var(Z_i)=\theta
. The parameter \theta
describes the degree of
between-subject-heterogeneity. Data output is in the counting process format.
Usage
simrec(
N,
fu.min,
fu.max,
cens.prob = 0,
dist.x = "binomial",
par.x = 0,
beta.x = 0,
dist.z = "gamma",
par.z = 0,
dist.rec,
par.rec,
pfree = 0,
dfree = 0
)
Arguments
N |
Number of individuals |
fu.min |
Minimum length of follow-up. |
fu.max |
Maximum length of follow-up. Individuals length of follow-up is
generated from a uniform distribution on
|
cens.prob |
Gives the probability of being censored due to loss to follow-up before
|
dist.x |
Distribution of the covariate(s) |
par.x |
Parameters of the covariate distribution(s). For |
beta.x |
Regression coefficient(s) for the covariate(s) |
dist.z |
Distribution of the frailty variable |
par.z |
Parameter |
dist.rec |
Form of the baseline hazard function. Possible values are |
par.rec |
Parameters for the distribution of the event data.
If
where
where
where
.
Then |
pfree |
Probability that after experiencing an event the individual is not at risk
for experiencing further events for a length of |
dfree |
Length of the risk-free interval. Must be in the same time unit as |
Details
Simulation of recurrent event data for non-constant baseline hazard in the total time model with risk-free intervalls and possibly a competing event. The simrec package enables to cut the data to an interim data set, and provides functionality to plot.
Data are simulated by extending the methods proposed by Bender et al [2] to the multiplicative intensity model.
Value
The output is a data.frame consisting of the columns:
id |
An integer number for identification of each individual |
x |
or |
z |
Contains the randomly generated value of the frailty variable |
start |
The start of interval |
stop |
The time of an event or censoring, i.e. the end of interval
|
status |
An indicator of whether an event occured at time |
fu |
Length of follow-up period |
For each individual there are as many lines as it experiences events, plus one line if being censored. The data format corresponds to the counting process format.
Author(s)
Katharina Ingel, Stella Preussler, Antje Jahn-Eimermacher, Federico Marini
Maintainer: Antje Jahn-Eimermacher jahna@uni-mainz.de
Katharina Ingel, Stella Preussler, Antje Jahn-Eimermacher. Institute of Medical Biostatistics, Epidemiology and Informatics (IMBEI), University Medical Center of the Johannes Gutenberg-University Mainz, Germany
References
Andersen P, Gill R (1982): Cox's regression model for counting processes: a large sample study. The Annals of Statistics 10:1100-1120
Bender R, Augustin T, Blettner M (2005): Generating survival times to simulate Cox proportional hazards models. Statistics in Medicine 24:1713-1723
Jahn-Eimermacher A, Ingel K, Ozga AK, Preussler S, Binder H (2015): Simulating recurrent event data with hazard functions defined on a total time scale. BMC Medical Research Methodology 15:16
See Also
Useful links:
simreccomp
Examples
### Example:
### A sample of 10 individuals
N <- 10
### with a binomially distributed covariate with a regression coefficient
### of beta=0.3, and a standard normally distributed covariate with a
### regression coefficient of beta=0.2,
dist.x <- c("binomial", "normal")
par.x <- list(0.5, c(0, 1))
beta.x <- c(0.3, 0.2)
### a gamma distributed frailty variable with variance 0.25
dist.z <- "gamma"
par.z <- 0.25
### and a Weibull-shaped baseline hazard with shape parameter lambda=1
### and scale parameter nu=2.
dist.rec <- "weibull"
par.rec <- c(1, 2)
### Subjects are to be followed for two years with 20% of the subjects
### being censored according to a uniformly distributed censoring time
### within [0,2] (in years).
fu.min <- 2
fu.max <- 2
cens.prob <- 0.2
### After each event a subject is not at risk for experiencing further events
### for a period of 30 days with a probability of 50%.
dfree <- 30 / 365
pfree <- 0.5
simdata <- simrec(
N, fu.min, fu.max, cens.prob, dist.x, par.x, beta.x, dist.z, par.z,
dist.rec, par.rec, pfree, dfree
)
# print(simdata) # only run for small N!