Hi, import numpy as np x = np.arange(30) x.shape = (2,3,5) idx = np.array([0,1]) e = x[0,idx,:] print e.shape #----> return (2,5). ok. 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. Regards David -- <>