| carry_forward | R Documentation |
This function assists the implemention of a restriction on a covariate in the date
table newdf. A particular covariate is simulated only when some condition
(usually a covariate representing whether a doctor's visit occurred or not) is TRUE.
If the condition is FALSE, the covariate value is not simulated for that time point
and the value is instead carried over from the previous time point.
carry_forward(newdf, pool, restriction, time_name, t, int_visit_type, intvar)
newdf |
Data table containing the simulated data at time |
pool |
Data table containing the simulated data at times before |
restriction |
List of vectors. Each vector contains as its first entry
the covariate affected by the restriction; its second entry
the condition that must be |
time_name |
Character string specifying the name of the time variable in |
t |
Integer specifying the current time index. |
int_visit_type |
Logical scalar specifying whether to carry forward the intervened value (rather than the natural value) of the treatment variables(s) when performing a carry forward restriction type |
intvar |
A vector specifying the name(s) of the variable(s) to be intervened on. |
No value is returned. The data table newdf is modified in place.
## Estimating the effect of static treatment strategies on risk of a
## failure event
id <- 'id'
time_points <- 7
time_name <- 't0'
covnames <- c('L1', 'L2', 'A')
outcome_name <- 'Y'
outcome_type <- 'survival'
covtypes <- c('binary', 'bounded normal', 'binary')
histories <- c(lagged, lagavg)
histvars <- list(c('A', 'L1', 'L2'), c('L1', 'L2'))
covparams <- list(covmodels = c(L1 ~ lag1_A + lag_cumavg1_L1 + lag_cumavg1_L2 +
L3 + t0,
L2 ~ lag1_A + L1 + lag_cumavg1_L1 +
lag_cumavg1_L2 + L3 + t0,
A ~ lag1_A + L1 + L2 + lag_cumavg1_L1 +
lag_cumavg1_L2 + L3 + t0))
ymodel <- Y ~ A + L1 + L2 + L3 + lag1_A + lag1_L1 + lag1_L2 + t0
intervention1.A <- list(static, rep(0, time_points))
intervention2.A <- list(static, rep(1, time_points))
int_descript <- c('Never treat', 'Always treat')
nsimul <- 10000
# At t0 == 5, assign L1 its value at the previous time point
restrictions <- list(c('L2', 't0 != 5', carry_forward))
gform_basic <- gformula(obs_data = basicdata_nocomp, id = id,
time_points = time_points,
time_name = time_name, covnames = covnames,
outcome_name = outcome_name,
outcome_type = outcome_type, covtypes = covtypes,
covparams = covparams, ymodel = ymodel,
intervention1.A = intervention1.A,
intervention2.A = intervention2.A,
int_descript = int_descript,
restrictions = restrictions,
histories = histories, histvars = histvars,
basecovs = c('L3'), nsimul = nsimul,
seed = 1234)
gform_basic
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.