genSurv {simstudy} | R Documentation |
Generate survival data
Description
Survival data is added to an existing data set.
Usage
genSurv(
dtName,
survDefs,
digits = 3,
timeName = NULL,
censorName = NULL,
eventName = "event",
typeName = "type",
keepEvents = FALSE,
idName = "id",
envir = parent.frame()
)
Arguments
dtName |
Name of data set |
survDefs |
Definitions of survival |
digits |
Number of digits for rounding |
timeName |
A string to indicate the name of a combined competing risk time-to-event outcome that reflects the minimum observed value of all time-to-event outcomes. Defaults to NULL, indicating that each time-to-event outcome will be included in dataset. |
censorName |
The name of a time to event variable that is the censoring variable. Will be ignored if timeName is NULL. |
eventName |
The name of the new numeric/integer column representing the competing event outcomes. If censorName is specified, the integer value for that event will be 0. Defaults to "event", but will be ignored if timeName is NULL. |
typeName |
The name of the new character column that will indicate the event type. The type will be the unique variable names in survDefs. Defaults to "type", but will be ignored if timeName is NULL. |
keepEvents |
Indicator to retain original "events" columns. Defaults to FALSE. |
idName |
Name of id field in existing data set. |
envir |
Optional environment, defaults to current calling environment. |
Value
Original data table with survival time
Examples
# Baseline data definitions
def <- defData(varname = "x1", formula = .5, dist = "binary")
def <- defData(def, varname = "x2", formula = .5, dist = "binary")
def <- defData(def, varname = "grp", formula = .5, dist = "binary")
# Survival data definitions
sdef <- defSurv(
varname = "survTime", formula = "1.5*x1",
scale = "grp*50 + (1-grp)*25", shape = "grp*1 + (1-grp)*1.5"
)
sdef <- defSurv(sdef, varname = "censorTime", scale = 80, shape = 1)
sdef
# Baseline data definitions
dtSurv <- genData(300, def)
# Add survival times
dtSurv <- genSurv(dtSurv, sdef)
head(dtSurv)