2009/3/12 Robert Kern <robert.k...@gmail.com>:
>> idx = np.array([0,1])
>> e = x[0,:,idx]
>> print e.shape
>>
>> #-----> return (2,3). I think the right answer should be (3,2). Is
>> #       it a bug here? my numpy version is 1.2.1.
>
> It's certainly weird, but it's working as designed. Fancy indexing via
> arrays is a separate subsystem from indexing via slices. Basically,
> fancy indexing decides the outermost shape of the result (e.g. the
> leftmost items in the shape tuple). If there are any sliced axes, they
> are *appended* to the end of that shape tuple.

This was my understanding, but now I see:

In [31]: x = np.random.random([4,5,6,7])

In [32]: idx = np.array([1,2])

In [33]: x[:, idx, idx, :].shape
Out[33]: (4, 2, 7)

Cheers
Stéfan
_______________________________________________
Numpy-discussion mailing list
Numpy-discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to