[Numpy-discussion] Can't mix np.newaxis with boolean indexing
Sun Aug 21 15:07:16 CDT 2011
Since the result is one-dimensional after using boolean indexing you
can always do:
array([[2, 3, 4]])
On Sat, Aug 20, 2011 at 10:17 PM, Benjamin Root <email@example.com> wrote:
> On Sat, Aug 20, 2011 at 2:47 AM, Olivier Verdier <firstname.lastname@example.org> wrote:
>> Your syntax is not as intuitive as you may think.
>> Suppose I take a matrix instead
>> a = np.array([1,2,3,4]).reshape(2,2)
>> b = (a>1) # np.array([[False,True],[True,True]])
>> How would a[b,np.newaxis] be supposed to work?
>> Note that other (simple) slices work perfectly with newaxis, such as
>> == Olivier
> Personally, I would have expected it to flatten the results and added a
> a[b, np.newaxis]
> a[np.newaxis, b]
> array([[2, 3, 4]])
> I mean, it flattens the results anyway when doing boolean indexing for
> multi-dimensional arrays, so someone doing that should expect that anyway.
> At the very least, I think maybe we could have a better error message than
> just saying that long() can't take a NoneType?
> Ben Root
> NumPy-Discussion mailing list
More information about the NumPy-Discussion