Change the RNG version and restore it afterwards.
with_rng_version(version, code) local_rng_version(version, .local_envir = parent.frame())
version |
|
---|---|
code |
|
.local_envir | The environment to apply the change to. |
[any]
The results of the evaluation of the code
argument.
with_rng_version()
runs the code with the specified RNG version and
resets it afterwards.
local_rng_version()
changes the RNG version for the caller
execution environment.
withr
for examples
#> [1] "Mersenne-Twister" "Inversion" "Rejection"#> [1] "Mersenne-Twister" "Inversion" "Rounding"#> [1] "Marsaglia-Multicarry" "Buggy Kinderman-Ramage" "Rounding"#> [1] 92 93 29#> [1] 33 44 32#> [1] "Mersenne-Twister" "Inversion" "Rejection"fun1 <- function() { local_rng_version("3.0.0") with_seed(42, sample(1:100, 3)) } fun2 <- function() { local_rng_version("1.6.0") with_seed(42, sample(1:100, 3)) } RNGkind()#> [1] "Mersenne-Twister" "Inversion" "Rejection"fun1()#> [1] 92 93 29fun2()#> [1] 33 44 32#> [1] "Mersenne-Twister" "Inversion" "Rejection"