`sample()` gives different values with same `set.seed()`
ggplot2, r, sample, seeding
Solution
I think I saw some discussion of this in one of the R chat rooms: `ggplot2` calls the random number generator in order to decide whether/which tip it wants to offer.
In particular, this is `ggplot2:::.onAttach`:
function (...)
{
if (!interactive() || stats::runif(1) > 0.1)
return()
tips <- c("Need help? Try the ggplot2 mailing list: http://groups.google.com/group/ggplot2.",
paste("Find out what's changed in ggplot2 with\n", "news(Version == \"",
utils::packageVersion("ggplot2"), "\", package = \"ggplot2\")",
sep = ""), "Use suppressPackageStartupMessages to eliminate package startup messages.")
tip <- sample(tips, 1)
packageStartupMessage(tip)
}
It's sort of amusing that one of the randomly generated tips tells you how to turn off the tips ...
Problem
I was creating some random samples and plotting them and noticed a strange behavior. Sampled values were different after loading ggplot2: ``` set.seed(111) library(ggplot2) sample(1:10, 10) # [1] 8 4 5 3 7 1 6 2 10 9 set.seed(111) sample(1:10, 10) # [1] 6 7 3 4 8 10 1 2 9 5 ``` I can avoid this behavior easily enough, but is there any reason for ggplot2 to change the seed value?