NumPy is the fundamental package for scientific computing with Python.
It’s an open source Python library that provides a multidimensional array object, various derived objects (such as masked arrays and matrices), and an assortment of routines for fast operations on arrays, including mathematical, logical, shape manipulation, sorting, selecting, I/O, discrete Fourier transforms, basic linear algebra, basic statistical operations, random simulation and much more.
A wide range of scientific and mathematical Python-based packages use NumPy arrays.
NumPy can also be used as an efficient multi-dimensional container of generic data. Arbitrary data-types can be defined. This allows NumPy to seamlessly and speedily integrate with a wide variety of databases.
- ndarray object – this encapsulates n-dimensional arrays of homogeneous data types, with many operations being performed in compiled code for performance. It’s a table of elements (usually numbers), all of the same type, indexed by a tuple of positive integers.
- Sophisticated (broadcasting) functions. The term broadcasting describes how NumPy treats arrays with different shapes during arithmetic operations. Broadcasting provides a means of vectorizing array operations so that looping occurs in C instead of Python.
- Supports a wide range of numerical type.
- Special matrix type for doing linear algebra, which is a subclass of the array class. Operations on matrix-class arrays are linear algebra operations.
- Fourier transforms.
- Random number capabilities:
- random_sample – uniformly distributed floats over “[0, 1)”.
- bytes – uniformly distributed random bytes.
- random_integers – uniformly distributed integers in a given range.
- permutation – randomly permute a sequence / generate a random sequence.
- shuffle – randomly permute a sequence in place.
- seed – seed the random number generator.
- choice – random sample from 1-D array.
- Includes f2py – Fortran to Python Interface Generator – offers easy-to-use mechanisms for linking C, C++, and Fortran code directly into Python.
|Read our complete collection of recommended free and open source software. The collection covers all categories of software.|