Hi,

I'm trying to extract sub-sections of a multidimensional array while keeping 
the number of dimensions the same. If I just select a specific element along a 
given direction, then the number of dimensions goes down by one:

>>> import numpy as np
>>> a = np.zeros((10,10,10))
>>> a.shape
(10, 10, 10)
>>> a[0,:,:].shape
(10, 10)

This makes sense to me. If I want to retain the initial number of dimensions, I 
can do

>>> a[[0],:,:].shape
(1, 10, 10)

However, if I try and do this along two directions, I do get a reduction in the 
number of dimensions:

>>> a[[0],:,[5]].shape
(1, 10)

I'm wondering if this is normal, or is a bug? In fact, I can get what I want by 
doing:

>>> a[[0],:,:][:,:,[5]].shape
(1, 10, 1)

so I can get around the issue, but just wanted to check whether the issue with 
a[[0],:,[5]] is a bug?

Thanks,

Tom


_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to