On Wed, May 23, 2007 at 09:49:08AM -0400, Anne Archibald wrote: > On 23/05/07, Albert Strasheim <[EMAIL PROTECTED]> wrote: > > > Is it correct that the F_CONTIGUOUS flag is set in the case of the fancy > > indexed x? I'm running NumPy 1.0.3.dev3792 here. > > Numpy arrays are always stored in contiguous blocks of memory with > uniform strides. The "CONTIGUOUS" flag actually means something > totally different, which is unfortunate, but in any case, "fancy > indexing" can't be done as a simple reindexing operation. It must make > a copy of the array. So what you're seeing is the flags of a fresh new > array, created from scratch (and numpy always creates arrays in C > order internally, though that is an implementation detail you should > not rely on).
That still doesn't explain In [41]: N.zeros((3,2))[:,[0,1]].flags Out[41]: C_CONTIGUOUS : False F_CONTIGUOUS : True <<<<<<<<<<< OWNDATA : False <<<<<<<<<<< WRITEABLE : True ALIGNED : True UPDATEIFCOPY : False vs. In [40]: N.zeros((3,2),order='F')[:,[0,1]].flags Out[40]: C_CONTIGUOUS : True F_CONTIGUOUS : False <<<<<<<<<< OWNDATA : False <<<<<<<<<< WRITEABLE : True ALIGNED : True UPDATEIFCOPY : False Maybe the Fortran-ordering quiz at http://mentat.za.net/numpy/quiz needs an update! :) Cheers Stéfan _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion