Wrap a custom generator function so it can participate in simulate_data().
Arguments
- vars
Character vector naming the generated variables.
- generator
Function called as
generator(context = context, vars = vars, level = level, ...). It must return a list withdataandnameselements, and may includemetadata.- level
Simulation level. A level-2 custom generator may return either one row per group or one row per simulated observation.
- ...
Additional arguments passed to
generator.- metadata
List of wrapper metadata stored on the generator specification.
Value
An mlsim_generator_spec object for use in simulate_data().
See also
Other predictor generators:
continuous-generators,
count-generators,
gen_categorical(),
gen_mvn(),
gen_normal()
Examples
constant_generator <- function(context, vars, level, value = 1) {
list(data = data.frame(value = rep(value, context$n_rows)), names = vars)
}
sim <- simulate_data(
n = 3,
generators = list(x = gen_custom("x", constant_generator, value = 7))
)
sim$data
#> obs_id x
#> <int> <num>
#> 1: 1 7
#> 2: 2 7
#> 3: 3 7