[SciPy-user] Python's various numeric packages

eric jones eric at enthought.com
Tue Jul 15 02:18:59 EDT 2003


Hey Colin,

> Is there some place where there is an overview of the various
> packages, their relationships and their present stages of development?

Numeric is the only required prerequisite.  wxPython for plotting and a
C++ compiler for weave are helpful but not required.

> 
> I have downloaded SciPy: SciPy-0.2.0_alpha_202.4187.win32-py2.1.exe
> The install fails. It does not permit the install directory to be
entered.  > It does not detect the registered (XP) Python installation
to suggest site-
> packages as a likely install directory.

I am not sure why it doesn't work on your machine.  I just installed the
2.2 version of the same file, and it found my Python2.2 installation and
installed fine.  

Are others having problem with the 2.1 file?

The easiest way to get a windows installation is to use the full python
installation found here:

http://www.enthought.com/python/

> Does SciPy depend on Numeric?

Yes.  I believe that 20.3 or beyond should work.  Most people are
probably using 22 or 23 currently.

> Numeric appears to be fully operational, but no longer being developed
> as it is being replaced eventually by numarray.  The intended time
frame for 
> this evolution is not clear.

Numarray will be the successor to Numeric.  I talked with Perry
Greenfield from STSci at OSCON last week.  STSci is developing numarray.
He said that pretty much the only things left before numarray is a
"feature complete" replacement for Numeric are PyObject array support
and Paul Dubois Masked Array (MA) classes.  He wants a full replacement
before releasing 1.0.  I'll let him pronounce the official release
dates, but it is not so far off.

Numarray and Numeric will co-exist for a long while.  Numarray is new
and therefore less well tested.  It also has slower performance for
small arrays by about a factor of 3, but is faster for large arrays.
There are also many packages that rely on Numeric out in the wild, and
the transition will be slow.  

At some point, SciPy will cut over to using Numarray.  STSci folks are
working on getting the major portions of the port to work.  The process
and time for doing this hasn't been decided.  If it is easy to support
both Numeric and numarray, we will.  If it isn't, we'll have to think
hard about when and how to do the transition.

> 
> numarray appears to be largely operable, but speed problems have been
> reported. NDArray and NumArray are the basic classes of numarray, but
the 
> design decision seems to have been made to deprecate the use of class 
> methods in favour of factory functions.  This appears to inhibit the 
> development of sub-classes to NumArray.

Not sure what this is about because I haven't followed it that closely,
but I will say that sub-classing arrays isn't all that it is cracked up
to be in practice.  One of the nicest things about arrays is there array
arithmetic. They allow you to write mathematic formula-like code for
numerical operations.  When you sub-class an array, say with an Image
class, all mathematic operations work, but they return arrays instead of
images -- not so nice.  You end up having to do a lot of work to get the
behavior you want from the sub-classing.  I'm not saying it isn't
occasionally useful, it just isn't as nice as it first sounds...

> MatPy is an effort to facilitate matrix operations.  It seems to have
> resulted from a lot of work by Huaiyu Zhu.  An extended discussion
took 
> place during 2000 to 2001, but there seems to be little current
interest.

Don't know much about this.

> The project was originally based on Numeric, but appears to be in
> transition to
> numarray.  Again, the decision to use factory functions, rather than
> exploiting
> the full capability of the Python class structure, appears to hav been
made.
> 
> Source Forge advertises the availability of version 0.4 as a
downloadable
> Win 32 package, but it seems to have regressed to version 0.3.
> 
> I would appreciate any advice.
> 
> Colin W.
> 
> _______________________________________________
> SciPy-user mailing list
> SciPy-user at scipy.net
> http://www.scipy.net/mailman/listinfo/scipy-user





More information about the SciPy-User mailing list