[Numpy-discussion] is there an efficient way to get a random set of subsets/combinations?

Yaroslav Halchenko lists@onerussian....
Tue Feb 21 08:34:18 CST 2012

Thank you guys for replies!

On Mon, 20 Feb 2012, Christopher Jordan-Squire wrote:
> If you're using numpy 2.0 (the development branch), the function
> numpy.random.choice might do what you're looking for.

yeap -- handy one, although would require manual control over
repetitions lazy me was trying to avoid ;)

On Tue, 21 Feb 2012, Val Kalatsky wrote:
>    Hi Slava,

Mom, is that you? ;-)

>    Since your k is only 10, here is a�quickie:
>    import numpy as np
>    arr = np.arange(n)
>    for i in range(k):
>    � � np.random.shuffle(arr)
>    � � print np.sort(arr[:p])
>    If your ever get non-unique entries in a set of k=10 for your n and p,
>    consider yourself lucky:)

well -- I just thought that there might be an ideal function which in
limit would return all combinations if given large enough k for
reasonably small (n, p)... but indeed I should just put a logic in place
to treat those cases separately.

Keep in touch                                     www.onerussian.com
Yaroslav Halchenko                 www.ohloh.net/accounts/yarikoptic

More information about the NumPy-Discussion mailing list