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.
Features include:
- 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.
Website: www.numpy.org
Support: Documentation, Tutorial, Mailing List, GitHub
Developer: NumPy Developers
License: BSD license
NumPy is written in Python. Learn Python with our recommended free books and free tutorials.
Return to Python Maths Tools | Return to Python Data Analysis | Return to Essential Python Tools
Popular series | |
---|---|
The largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions. | |
Hundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information. | |
The Big List of Active Linux Distros is a large compilation of actively developed Linux distributions. | |
Replace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS. | |
Awesome Free Linux Games Tools showcases a series of tools that making gaming on Linux a more pleasurable experience. This is a new series. | |
Machine Learning explores practical applications of machine learning and deep learning from a Linux perspective. We've written reviews of more than 40 self-hosted apps. All are free and open source. | |
New to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux. | |
Alternatives to popular CLI tools showcases essential tools that are modern replacements for core Linux utilities. | |
Essential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users. | |
Linux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine. | |
Surveys popular streaming services from a Linux perspective: Amazon Music Unlimited, Myuzi, Spotify, Deezer, Tidal. | |
Saving Money with Linux looks at how you can reduce your energy bills running Linux. | |
Home computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum. | |
Now and Then examines how promising open source software fared over the years. It can be a bumpy ride. | |
Linux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged. | |
Linux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery. | |
Getting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers. | |
Best Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series. | |
These best free books accelerate your learning of every programming language. Learn a new language today! | |
These free tutorials offer the perfect tonic to our free programming books series. | |
Linux Around The World showcases usergroups that are relevant to Linux enthusiasts. Great ways to meet up with fellow enthusiasts. | |
Stars and Stripes is an occasional series looking at the impact of Linux in the USA. |