Directly Getting or Setting the RNG Seed
These functions provide a direct access to the RNG seed object .Random.seed
.
RNGseed(seed) RNGrecovery()
seed |
an RNG seed, i.e. an integer vector. No validity check is performed, so it must be a valid seed. |
invisibly the current RNG seed when called with no arguments,
or the – old – value of the seed before changing it to
seed
.
RNGseed
: directly gets/sets the current RNG seed .Random.seed
.
It can typically be used to backup and restore the RNG state on exit of
functions, enabling local RNG changes.
RNGrecovery
: recovers from a broken state of .Random.seed
,
and reset the RNG settings to defaults.
#--- RNGseed --- # get current seed RNGseed() # directly set seed old <- RNGseed(c(401L, 1L, 1L)) # show old/new seed description showRNG(old) showRNG() # set bad seed RNGseed(2:3) try( showRNG() ) # recover from bad state RNGrecovery() showRNG() # example of backup/restore of RNG in functions f <- function(){ orng <- RNGseed() on.exit(RNGseed(orng)) RNGkind('Marsaglia') runif(10) } sample(NA) s <- .Random.seed f() identical(s, .Random.seed)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.