Why is s3 F_CONTIGUOUS, and perhaps equivalently, why is its C_CONTIGUOUS data in s3.base (below)? Thanks, Alan Isaac
a3 array([[ 0, 1, 2, 3, 4, 5], [ 6, 7, 8, 9, 10, 11]]) a3.flags C_CONTIGUOUS : True F_CONTIGUOUS : False OWNDATA : True WRITEABLE : True ALIGNED : True UPDATEIFCOPY : False ind array([3, 1, 2, 4, 5, 0]) s3 = a3[:,ind] s3.flags C_CONTIGUOUS : False F_CONTIGUOUS : True OWNDATA : False WRITEABLE : True ALIGNED : True UPDATEIFCOPY : False s3.base array([[ 3, 9], [ 1, 7], [ 2, 8], [ 4, 10], [ 5, 11], [ 0, 6]]) s3 array([[ 3, 1, 2, 4, 5, 0], [ 9, 7, 8, 10, 11, 6]])
On Sun, Dec 20, 2009 at 8:58 PM, Alan G Isaac
Why is s3 F_CONTIGUOUS, and perhaps equivalently, why is its C_CONTIGUOUS data in s3.base (below)? Thanks, Alan Isaac
a3 array([[ 0, 1, 2, 3, 4, 5], [ 6, 7, 8, 9, 10, 11]]) a3.flags C_CONTIGUOUS : True F_CONTIGUOUS : False OWNDATA : True WRITEABLE : True ALIGNED : True UPDATEIFCOPY : False ind array([3, 1, 2, 4, 5, 0]) s3 = a3[:,ind] s3.flags C_CONTIGUOUS : False F_CONTIGUOUS : True OWNDATA : False WRITEABLE : True ALIGNED : True UPDATEIFCOPY : False s3.base array([[ 3, 9], [ 1, 7], [ 2, 8], [ 4, 10], [ 5, 11], [ 0, 6]]) s3 array([[ 3, 1, 2, 4, 5, 0], [ 9, 7, 8, 10, 11, 6]])
Maybe another consequence of the different internal treatment of fancy and non-fancy slicing. I would infer from a comment by Travis in response to the question about the change in axis for 3d arrays with mixed fancy and non-fancy slicing.
ind = np.array([3, 1, 2, 4, 5, 0]) s3 = a[:,ind] s3.flags C_CONTIGUOUS : False F_CONTIGUOUS : True OWNDATA : False WRITEABLE : True ALIGNED : True UPDATEIFCOPY : False
s4 = a[np.arange(2)[:,None],ind] s4.flags C_CONTIGUOUS : True F_CONTIGUOUS : False OWNDATA : True WRITEABLE : True ALIGNED : True UPDATEIFCOPY : False
Josef
NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
participants (2)
-
Alan G Isaac
-
josef.pktd@gmail.com