2. What is NumPy?#

NumPy is the fundamental package for scientific computing in Python.

It is a 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.

NumPy features/capabilities

  • POWERFUL N-DIMENSIONAL ARRAYS: A fast and efficient DataFrame object for data manipulation with integrated indexing;

  • NUMERICAL COMPUTING TOOLS: NumPy offers comprehensive mathematical functions, random number generators, linear algebra routines, Fourier transforms, and more.

  • INTEROPERABLE: NumPy supports a wide range of hardware and computing platforms, and plays well with distributed, GPU, and sparse array libraries.

  • PERFORMANT: The core of NumPy is well-optimized C code. Enjoy the flexibility of Python with the speed of compiled code.

  • EASY TO USE: NumPy’s high level syntax makes it accessible and productive for programmers from any background or experience level.

  • OPEN SOURCE: Distributed under a liberal BSD license, NumPy is developed and maintained publicly on GitHub by a vibrant, responsive, and diverse community.