simulate {stats} | R Documentation |
Simulate one or more response vectors from the theoretical distribution corresponding to a fitted model object.
simulate(object, nsim, seed, ...)
object |
an object representing a fitted model. |
nsim |
number of response vectors to simulate. Defaults to 1. |
seed |
an object specifying if and how the random number
generator should be initialized (“seeded”). For the "lm" method, either NULL or an integer that will be
used in a call to set.seed before simulating the response
vectors. If set, the value is saved as the "seed" attribute
of the returned value. The default, NULL will not change the
random generator state, and return .Random.seed as
"seed" attribute, see below.
|
... |
additional optional arguments. |
This is a generic function with a method for lm
objects.
Consult the individual modeling functions
for details on how to use this function.
Typically, a list of length nsim
of simulated response vectors.
When appropriate the result can be a data frame (which is a special
type of list).
For the "lm"
method, the result is a data frame with an
attribute "seed"
containing the seed
argument and
as.list(RNGkind())
if seed
was not NULL
,
or the value of .Random.seed
before the simulation was
started when seed
was NULL as by default.
fitted.values
and residuals
for related methods;
glm
, lm
for model fitting.
x <- 1:5 mod1 <- lm(c(1:3,7,6) ~ x) S1 <- simulate(mod1, nsim = 4) ## repeat the simulation: .Random.seed <- attr(S1, "seed") identical(S1, simulate(mod1, nsim = 4)) S2 <- simulate(mod1, nsim = 200, seed = 101) rowMeans(S2) # should be about fitted(mod1) ## repeat identically: (sseed <- attr(S2, "seed")) # seed; RNGkind as attribute stopifnot(identical(S2, simulate(mod1, nsim = 200, seed = sseed))) ## To be sure about the proper RNGkind, e.g., after RNGversion("1.0.0") ## first set the RNG kind, then simulate do.call(RNGkind, attr(sseed, "kind")) identical(S2, simulate(mod1, nsim = 200, seed = sseed))