[R] Question: reproducibility of random sampling with replacement

Rolf Turner r.turner at auckland.ac.nz
Wed Jan 1 23:59:43 CET 2014


Why on earth would you expect S and T to be the same given
what you have done.  "I am unable to rightly apprehend the
confusion of ideas that could provoke such a question",
(Charles Babbage).

You have to set the *same* seed before each construction.
I.e. do set.seed(123) before creating S; then do set.seed(123)
again before creating T.  If you do so, S and T will be
identical.

	cheers,

	Rolf Turner

P. S. "T" is not a good name for an object; too easy to confuse
with "TRUE".  Not an egregious sin, but to be avoided.

	R. T.

On 02/01/14 11:12, Chee Chen wrote:
> Dear All,
>
> I would like to ask for your help on "reproducibility of random sampling with replacement". For example, one re-samples the rows with replacement of a residual matrix and uses the new residual matrix thus obtained to produce a statistic ; repeat this for a certain number of times.
>
> My questions:  will the above produce ever be reproducible by setting a seed? Namely,  Given the same residual matrix, Ted applies the above process and so does Jack, will they get the same results by setting a seed?
>
> My attempt: setting seed does not freeze the command "sample" from  getting different samples, as from the codes:
> ====
> x= 1:20
> S = matrix(0,5,20)
> for (i in 1:5) {
>    S[i,] = sample(x, replace=FALSE)
> }
>
> set.seed(123)
>
> T = matrix(0,5,20)
> for (i in 1:5) {
>    T[i,] = sample(x, replace=FALSE)
> }
> sum(S==T)
> ===
>
> I would appreciate any comments and/or suggestions on this.




More information about the R-help mailing list