On 17/09/2014 3:07 PM, Duncan Murdoch wrote:
On 17/09/2014 2:25 PM, Giovanni Petris wrote:
> Hello,
>
> I am trying to interface in my teaching some elementary probability with 
Monte Carlo ideas. In sampling from a finite population, the number of distinct 
samples of size 'k' from a population of size 'n' , when individuals are selected 
with replacement and the selection order does not matter, is choose(n + k -1, k). 
Does anyone have a suggestion about how to simulate (uniformly!) one of these 
possible samples? In a Monte Carlo framework I would like to do it repeatedly, so 
efficiency is of some relevance.
>
> Thank you in advance!

I forget the details of the derivation of that count, but the number
suggests it is found by selecting k things without replacement from
n+k-1.  The sample() function in R can easily give you a sample of k
integers from 1:(n+k-1); "all" you need to do is map those numbers into
your original sample of k from n.  For that you need to remember the
derivation of that formula!

The derivation is on this web page: http://mathworld.wolfram.com/Multichoose.html .

Duncan Murdoch

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to