Description Usage Arguments Value Behaviour changes in versions Examples
Sets the behaviour of %dorng% foreach loops from a given version number.
1 | doRNGversion(x)
|
x |
version number to switch to, or missing to get
the currently active version number, or |
a character string If x
is missing this function
returns the version number from the current behaviour. If
x
is specified, the function returns the old value
of the version number (invisible).
The behaviour of doRNGseed
,
and therefore of %dorng%
loops, changed in the
case where the current RNG was L'Ecuyer-CMRG. Using
set.seed
before a non-seeded loop used not to be
identical to seeding via .options.RNG
. Another bug
was that non-seeded loops would share most of their RNG
seed!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | ## Seeding when current RNG is L'Ecuyer-CMRG
RNGkind("L'Ecuyer")
doRNGversion("1.4")
# in version >= 1.4 seeding behaviour changed to fix a bug
set.seed(123)
res <- foreach(i=1:3) %dorng% runif(1)
res2 <- foreach(i=1:3) %dorng% runif(1)
stopifnot( !identical(attr(res, 'rng')[2:3], attr(res2, 'rng')[1:2]) )
res3 <- foreach(i=1:3, .options.RNG=123) %dorng% runif(1)
stopifnot( identical(res, res3) )
# buggy behaviour in version < 1.4
doRNGversion("1.3")
res <- foreach(i=1:3) %dorng% runif(1)
res2 <- foreach(i=1:3) %dorng% runif(1)
stopifnot( identical(attr(res, 'rng')[2:3], attr(res2, 'rng')[1:2]) )
res3 <- foreach(i=1:3, .options.RNG=123) %dorng% runif(1)
stopifnot( !identical(res, res3) )
# restore default RNG
RNGkind("default")
# restore to current doRNG version
doRNGversion(NULL)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.