On Thu, 2009-05-28 at 09:30 +0200, chajew...@fordham.edu wrote: > Full_Name: Michael Chajewski > Version: 2.9.0 > OS: Windows XP > Submission from: (NULL) (150.108.71.185) > > > I was programming a routine which kept reducing the array from which a random > sample was taken, resulting in a single number. I discovered that when R > attempts to sample from an object with only one number it does not > reproduce/report the number but instead chooses a random number between 1 and > that number.
This is working as documented/intended in ?sample. 'x' is of length 1, so it is interpreted as 1:x (if x >=1), resulting in the behaviour you have encountered. That help page even goes so far as to warn you that this "convenience feature may lead to undesired behaviour..." and gives an example function (in Examples) that handles the sort of use case you have. See the Examples section and the resample() function created there. HTH G > > Example 1: > > # I am assigning a single number > gg <- 7 > # Creating an array to store sampled values > ggtrack <- 0 > > # I am sampling 10,000 observations from my single value > # object and storing them > for (i in 1:10000) { > g0 <- sample(gg, (i/i)) > ggtrack <- c(ggtrack,g0) > } > > # Deleting the initial value in the array > ggtrack <- ggtrack[-1] > > # The array ought to be 10,000 samples long (and it is) > length(ggtrack) > > # The array should contain 10,000 "7", but it does not > # See the histogram of sampled values > hist(ggtrack) > > Example 2: > > # Here is the same example, but now with > # two number. Note that now the function performs > # as expected and only samples between the two. > > gg <- c(7,2) > ggtrack <- 0 > for (i in 1:10000) { > g0 <- sample(gg, (i/i)) > ggtrack <- c(ggtrack,g0) > } > > ggtrack <- ggtrack[-1] > length(ggtrack) > hist(ggtrack) > > > Highest Regards, > Michael Chajewski > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel -- %~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~% Dr. Gavin Simpson [t] +44 (0)20 7679 0522 ECRC, UCL Geography, [f] +44 (0)20 7679 0565 Pearson Building, [e] gavin.simpsonATNOSPAMucl.ac.uk Gower Street, London [w] http://www.ucl.ac.uk/~ucfagls/ UK. WC1E 6BT. [w] http://www.freshwaters.org.uk %~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%
signature.asc
Description: This is a digitally signed message part
______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel