[Numpy-discussion] what would you expect A[none] to do?
ben.v.root at gmail.com
Thu Dec 31 15:10:55 EST 2015
TBH, I wouldn't have expected it to work, but now that I see it, it does
make some sense. I would have thought that it would error out as being
ambiguous (prepend? append?). I have always used ellipses to make it
explicit where the new axis should go. But, thinking in terms of how
regular indexing works, I guess it isn't all that ambiguous.
On Thu, Dec 31, 2015 at 11:56 AM, Joe Kington <joferkington at gmail.com>
> Slicing with None adds a new dimension. It's a common paradigm, though
> usually you'd use A[np.newaxis] or A[np.newaxis, ...] instead for
> readibility. (np.newaxis is None, but it's a lot more readable)
> There's a good argument to be made that slicing with a single None
> shouldn't add a new axis, and only the more readable forms like A[None, :],
> A[..., None], etc should.
> However, that would rather seriously break backwards compatibility.
> There's a fair amount of existing code that assumes "A[None]" prepends a
> new axis.
> On Thu, Dec 31, 2015 at 10:36 AM, Neal Becker <ndbecker2 at gmail.com> wrote:
>> Neal Becker wrote:
>> > In my case, what it does is:
>> > A.shape = (5760,)
>> > A[none] -> (1, 5760)
>> > In my case, use of none here is just a mistake. But why would you want
>> > this to be accepted at all, and how should it be interpreted?
>> Actually, in my particular case, if it just acted as a noop, returning the
>> original array, that would have been perfect. No idea if that's a good
>> result in general.
>> NumPy-Discussion mailing list
>> NumPy-Discussion at scipy.org
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the NumPy-Discussion