> # rngset.r November 2007 > # > # how to set seeds and regenerate data > # > # default generator is Mersenne-Twister > # > set.seed(5151917) # what I often do > u <- runif(2) # generate just two > u [1] 0.4517236 0.6452118 > u <- runif(2) # generate two more > u [1] 0.3915555 0.2557013 > set.seed(5151917) # set to same one > u <- runif(2) # generate two more > u [1] 0.4517236 0.6452118 > # > myfirst <- .Random.seed # where it is right now > myfirst # what does it look like? [1] 403 2 -111456631 -329549381 211248010 98519660 [7] -35027985 -86299611 1449145564 -674493774 -944837203 1069511015 [13] 569446030 -219179160 -325464213 -1109616375 -1757081704 960968390 [19] -1875934175 1249923251 2100169250 -1356854252 -1442389865 -2099359091 [613] -1868993950 1045576951 -875862207 -421222970 -487622908 -347880779 [619] -1635476065 -943959560 -614932522 509344355 -1810300379 225642946 [625] -1679749456 1946861321 > u <- runif(2) # generate just two > u [1] 0.3915555 0.2557013 > # > # another is Wichmann-Hill > set.seed(1917, kind="Wichmann-Hill") # change generator & seed > mysecond <- .Random.seed > mysecond # what does it look like now? [1] 400 28060 7649 24711 > u <- runif(2) # two more from this one > u [1] 0.4680498 0.9091327 > # > # restore first one > # > .Random.seed <- myfirst > u <- runif(2) > u [1] 0.3915555 0.2557013 > # done > rm(list=ls()) > q()