| RNGseed {rngtools} | R Documentation |
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(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.
# 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)