On Wed, Apr 22, 2009 at 2:37 PM, Pauli Virtanen <[email protected]> wrote: > Wed, 22 Apr 2009 20:18:14 +0200, Fabrice Pardo wrote: > [clip] >> The reshape function is unpredictable and its behaviour is not >> documented. >> >> It cannot be used safely. > > It is documented and it can be used safely. The manual, however, has > currently no section on views that would explain these issues in depth. > > If you want to ensure no-copy, assign to shape: > > a.shape = (6,) > >> Another remark against reshape: >> OWNDATA flag is False, even if b is a copy ! > > Apparently, reshape first copies to a contiguous array and then reshapes. > This could be simplified. >
Is the difference between assigning to the attribute and using the method call explained somewhere? I had recently the puzzling case, where I wanted to create a structured array, and tried x.view(dtype=...) x.astype(..) x.dtype = ... I don't remember exactly, but view and astype didn't create the structured array that I wanted, while the assignment x.dtype = ... worked. >This has the effect that the unravelling is done in Fortran order (when >order='F') rather than C-order, which can be confusing at times. If he intentionally starts out in Fortran order, he might have a reason to stick to it. In stats, we are still focused by default on axis=0, and I usually think in terms of columns of random variables. But using a lot of transpose and newaxis, I never know what the memory layout is unless I check the flags, and I'm starting to realize that this requires more attention with numpy. Josef _______________________________________________ Numpy-discussion mailing list [email protected] http://mail.scipy.org/mailman/listinfo/numpy-discussion
