[Numpy-discussion] fix random.choice for 1.7?
Nathaniel Smith
njs@pobox....
Mon Nov 12 16:46:10 CST 2012
On Mon, Nov 12, 2012 at 11:34 PM, Alan G Isaac <alan.isaac@gmail.com> wrote:
> On 11/12/2012 12:16 PM, Sebastian Berg wrote:
>> So instead of taking a sequence of length 1, take an element as default.
>
> Sebastien has proposed that np.random.choice return
> a single *element* by default, not a 1d array of length 1.
> He proposes to associate this with a default value of `size=None`.
>
> The motivation: it is more natural, and in particular,
> it would behave more like Python's random.choice by default.
>
> This decision should be made before this function
> is part of a release.
I see, so right now we have
>>> np.random.choice([1, 2, 3])
array([2])
but you're suggesting
>>> np.random.choice([1, 2, 3])
2
>>> np.random.choice([1, 2, 3], size=1)
array([2])
That does seem like an obvious improvement to me, since all the other
random functions work that way, e.g.:
In [2]: np.random.normal()
Out[2]: -0.8752867990041713
In [4]: np.random.normal(size=1)
Out[4]: array([ 1.92803487])
Want to make a pull request?
-n
More information about the NumPy-Discussion
mailing list