[Numpy-discussion] Resize Method for Numpy Array
Christopher Barker
Chris.Barker at noaa.gov
Thu Sep 24 13:24:45 EDT 2009
Alice Invernizzi wrote:
> Therefore, is not clear to me why in numpy the size of an array can be
> changed (either with the 'returning-value' resize() function either with
> the 'in-place' array method resize()).
> Would you please be so kind to give some explanation for the existence
> of resize operator for numpy array?
I don't find I use it that much, but it can be useful for the same
reason that it is for lists, etc.
> If array size can be change,
> what are the real advantages of using numpy array instead of list object?
This I can really answer! the "it's a known size" property of an
nd-array is probably the least useful one I can think of. I think the
pre-known size aspect of array objects is really an artifact of wanting
efficient storage and processing, rather than a feature -- particularly
in a dynamic language.
As for other advantages:
arrays are homogeneous data -- giving far more efficiency in a dynamic
language
arrays are n-d -- you can slice and dice them as such -- it's easy to
extract either a row or a column from a 2-d array, for instance.
slices of arrays are arrays with a view on the same data: this makes it
easy to manipulate portions of an array with the same code you'd
manipulate a full array.
array broadcasting
easy and efficient interchange of raw data with other data types, from
C, C++ , Fortran, etc code.
and I could go on!
You might actually ask the question the other way -- if you can re-size
an array -- why do you ever need to use a list?
-Chris
--
Christopher Barker, Ph.D.
Oceanographer
Emergency Response Division
NOAA/NOS/OR&R (206) 526-6959 voice
7600 Sand Point Way NE (206) 526-6329 fax
Seattle, WA 98115 (206) 526-6317 main reception
Chris.Barker at noaa.gov
More information about the NumPy-Discussion
mailing list