[Numpy-discussion] Matlab vs. Python (Was: Re: [SciPy-Dev] Good-bye, sort of (John Hunter))
Sun Aug 15 20:53:47 CDT 2010
On Sun, Aug 15, 2010 at 4:27 PM, Sturla Molden <firstname.lastname@example.org> wrote:
>> Matlab also takes a copy if we create an array slice. It means for example
>> that a wavelet transform written in Python will be O(n) with respect to
>> memory, whereas it will be O(n log n) in Matlab.
> Other examples:
> A reshape will create a new array in Matlab. It will create a view in NumPy.
> A transpose will create a new array in Matlab and be O(m*n). A transpose
> will just create a view in NumPy (i.e. reverse stride and shape
> attributes) and be O(1).
> Matlab does not broadcast. We must explicitely match array shapes using
> repmat, which by the way creates a new array.
I agree broadcasting is one of my favorite features of numpy compared
to any other array language I know
> NumPy allows arrays to be updated inplace. Matlab always creates a new
> copy (Matlab arrays are immutable).
inplace operation in matlab:
not as fancy but improving
matlab has JIT compiler
also this for some mostly balanced arguments, I think,
I don't have very large memory requirements, and I didn't do enough
similar things in matlab and python to have experience with these
> NumPy-Discussion mailing list
More information about the NumPy-Discussion