Data Analysis

NumPy – multidimensional array computing for Python

NumPy is a numerical computing package built around the ndarray, a multidimensional array capable of storing and processing large collections of homogeneous data. It provides a foundation for scientific applications, statistical analysis and numerical algorithms.

Arrays can represent vectors, matrices and data with many dimensions. Rather than processing individual values in explicit loops, users can perform mathematical operations on entire arrays. This approach combines concise expressions with efficient numerical execution.

NumPy is particularly useful when working with numerical measurements, sampled signals, simulation results and other structured data. Its array model is also widely used for exchanging information between scientific computing applications and specialised analytical tools.

This is free and open source software.

Key Features

  • Multidimensional ndarray objects with configurable shapes, data types and memory layouts.
  • Broadcasting of compatible arrays to perform element-wise operations without explicit loops.
  • Universal functions for mathematical, logical, comparison and other numerical operations.
  • Advanced indexing, Boolean masking and slicing for selecting or modifying array data.
  • Array manipulation through reshaping, stacking, splitting, transposing and broadcasting.
  • Reduction and aggregation operations including sums, products, means, variances and quantiles.
  • Linear algebra routines for matrix multiplication, decompositions, solving systems of equations and eigenvalue calculations.
  • Discrete Fourier transforms for frequency-domain analysis of sampled data.
  • Random number generation through configurable Generator objects and bit generators.
  • Sorting, searching and set operations for numerical and categorical array values.
  • Structured arrays, record arrays and masked arrays for specialised data representations.
  • File input and output for NumPy array formats, text files and memory-mapped data.
  • Interoperability with scientific computing packages through standard array interfaces.
  • f2py interface generator for connecting numerical routines implemented in Fortran.
  • Cross-platform support – runs on Linux, macOS, and Windows.

Website: numpy.org
Support:
Developer: NumPy Developers
License: BSD 3-Clause ‘New’ or ‘Revised’ License

NumPy is written in Python. Learn Python with our recommended free books and free tutorials.


Related Software

Python Data Analysis
pandasHigh-level building block for doing practical, real world data analysis
NumPyCore package for scientific computing with Python
SciPyEcosystem for mathematics, science, and engineering
PolarsDataFrame interface on top of an OLAP Query Engine
statsmodelsStatistical modeling and econometrics in Python
DaskAdvanced parallelism for analytics
OrangeComponent-based framework for machine learning and data mining
ModinDrop-in replacement for pandas
VaexFast visualization of big data
AWS DWExtends the power of pandas library
ytMulti-code Toolkit for Analyzing and Visualizing Volumetric Data
HoloViewsMake Data Analysis and Visualization Seamless
datatableManipulate 2-dimensional tabular data structures
xarrayWork with labelled multi-dimensional arrays and datasets
pyjanitorExtend pandas with readable data-cleaning functions
OptimusAgile Data Preparation Workflows

Read our verdict in the software roundup.

Python Mathematics Tools
scikit-learnMachine learning library for Python
NumPyCore package for scientific computing with Python
SciPyEcosystem for mathematics, science, and engineering.
statsmodelsStatistical modeling and econometrics
JAXPython library for high-performance numerical computing
SageMathComputer algebra system
SymPyLibrary for symbolic mathematics
PyMCBayesian statistical modeling and probabilistic programming
PyomoObject-oriented algebraic modeling language
patsyPackage for describing statistical models and to build design matrices
mpmathLibrary for arbitrary-precision floating-point arithmetic
SfePyFinite element software package

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted