Feature #4247
Updated by mame (Yusuke Endoh) over 12 years ago
=begin We are planning to add the following features of the random sampling to Array. 1. Weighted random sampling. 2. Sampling with replacement. 3. Iteration. It is discussed in ruby-dev (Feature #3647 and #4147). API will be: Array#sample([size, [opt]]) - Random selection without replacement. - Returns a new array when size is specified. - opt: weight: proc or array random: Random instance Array#choice([size, [opt]]) - Random selection with replacement. - Returns a new array when size is specified. - opt: same as above. Array#each_sample([opt]) - Random selection iterator without replacement. - Choose a random element and yield it. - Returns an Enumerator if a block is not given. - opt: same as above. Array#each_choice([opt]) - Random selection iterator with replacement. - Choose a random element and yield it. - Returns an Enumerator if a block is not given. - opt: same as above. Comments? =end