<!doctype html><htmllang=en-us><head><scripttype=application/javascript>vardoNotTrack=false;if(!doNotTrack){window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+newDate;ga('create','UA-162151853-1','auto');ga('send','pageview');}</script><scriptasyncsrc=https://www.google-analytics.com/analytics.js></script><metaname=descriptioncontent="Why NumPy? Powerful n-dimensional arrays. Numerical computing tools. Interoperable. Performant. Open source."><metacharset=utf-8><metaname=viewportcontent="width=device-width,initial-scale=1,shrink-to-fit=no"><metahttp-equiv=x-ua-compatiblecontent="ie=edge"><title>NumPy</title><linkhref="https://fonts.googleapis.com/css?family=Lato:400,900" rel=stylesheet><linkrel=stylesheettype=text/csshref=/css/style.min.cf5efcb8a6e49b945af419cd8b208a5ae87eb3015995b9afc61218743a0fed3e.cssintegrity="sha256-z178uKbkm5Ra9BnNiyCKWuh+swFZlbmvxhIYdDoP7T4="><linkrel=stylesheettype=text/csshref=/css/icons.css><linkrel=icontype=image/pnghref=/images/favicon.png><linkhref="https://fonts.googleapis.com/css?family=Lato:400,900&display=swap" rel=stylesheet><linkhref="https://fonts.googleapis.com/css?family=Source+Code+Pro&display=swap" rel=stylesheet><linkrel=stylesheettype=text/csshref=/css/styles.css><linkrel=stylesheettype=text/csshref=/css/shell.css><linkrel=stylesheettype=text/csshref=/css/tabs.css><linkrel=stylesheettype=text/csshref=/css/content.css><linkrel=stylesheettype=text/csshref=/css/news.css><linkrel=stylesheettype=text/csshref=/css/keyfeatures.css><linkrel=stylesheettype=text/csshref=/css/casestudies.css></head><body><navid=navclass="navbar is-fresh is-transparent no-shadow" role=navigationaria-label="main navigation"><divclass=container><divclass=navbar-brand><aid=navbar-itemclass=navbar-itemhref=/><imgsrc=/images/logos/numpy.svgalt="Numpy logo. A three-dimensional blue cube with the letter 'N' highlighted in yellow." width=112height=28alt="Numpy logo. A three-dimensional blue cube with the letter 'N' highlighted in yellow."></a>
<ahref=/contributeid=navbar-itemclass="navbar-item is-secondary">Contribute</a></div></div></div></nav><sectionclass="content-padding flex-row"><divclass=shortcuts-container><divclass=shortcuts-title>Shortcuts</div><divid=shortcuts></div><divclass=sidebar-links><ahref=/gethelp>Get Help</a></div></div><divclass=content-container><divclass=columns><divclass="column is-centered-tablet-portrait"><h1class="title section-title">Array Computing</h1><h5class="subtitle is-5 is-muted"></h5><divclass=divider></div></div></div><p><em>Array computing is the foundation of statistical, mathematical, scientific computing
in various contemporary data science and analytics applications such as data
visualization, digital signal processing, image processing, bioinformatics,
machine learning, AI, and several others.</em></p><p>Large scale data manipulation and transformation depends on efficient,
high-performance array computing. The language of choice for data analytics,
machine learning, and productive numerical computing is <strong>Python.</strong></p><p><strong>Num</strong>erical <strong>Py</strong>thon or NumPy is its de-facto standard Python programming
language library that supports large, multi-dimensional arrays and matrices,
and comes with a vast collection of high-level mathematical functions to
operate on these arrays.</p><p>Since the launch of NumPy in 2006, Pandas appeared on the landscape in 2008,
and it was not until a couple of years ago that several array computing
libraries showed up in succession, crowding the array computing landscape.
Many of these newer libraries mimic NumPy-like features and capabilities, and
pack newer algorithms and features geared towards machine learning and artificial intelligence applications.</p><p><imgsrc=/images/content_images/array_c_landscape.pngalt=arraycltitle="Array Computing Landscape"></p><p><strong>Array computing</strong> is based on <strong>arrays</strong> data structures. <em>Arrays</em> are used
to organize vast amounts of data such that a related set of values can be easily
sorted, searched, mathematically manipulated, and transformed easily and quickly.</p><p>Array computing is <em>unique</em> as it involves operating on the data array <em>at
once</em>. What this means is that any array operation applies to an entire set of
values in one shot. This vectorized approach provides speed and simplicity by
enabling programmers to code and operate on aggregates of data, without having
to use loops of individual scalar operations.</p></div></div></section><divid=backtotop><ahref=#></a></div><scriptsrc=https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js></script><scriptsrc=https://unpkg.com/feather-icons></script><scriptsrc=/js/fresh.js></script><scriptsrc=/js/jquery.panelslider.min.js></script><scriptsrc=https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.8.3/modernizr.min.js></script><scriptsrc=https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/js/all.min.js></script><scriptsrc=https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css></script><scriptsrc=https://cdn.jsdelivr.net/npm/uikit@3.2.7/dist/js/uikit.min.js></script><linkrel=stylesheethref=https://cdn.jsdelivr.net/npm/uikit@3.2.7/dist/css/uikit.min.css><scripttype=text/x-thebe-config>
{
requestKernel: true,
binderOptions: {
repo: "joelachance/thebelab-requirements"
},
}
</script><scriptsrc=https://unpkg.com/thebelab@0.4.0/lib/index.js></script><scriptsrc=/js/app.js></script><footerid=footerclass=footer><divclass=container><divid=footer-columnsclass=columns><divclass=footer-logo-column><imgid=footer-logosrc=/images/logos/numpy.svgalt="Numpy logo. A three-dimensional blue cube with the letter 'N' highlighted in yellow."></div><divclass=link-column><divclass=footer-column><divclass=footer-header></div><ulclass=link-list><liclass=link-list><aclass=footer-linkhref=/install>Install</a></li><liclass=link-list><aclass=footer-linkhref=https://numpy.org/doc/stable>Documentation</a></li><liclass=link-list><aclass=footer-linkhref=/learn>Learn</a></li><liclass=link-list><aclass=footer-linkhref=https://numpy.org/neps/roadmap.html>Roadmap</a></li></ul></div></div><divclass=link-column><divclass=footer-column><divclass=footer-header></div><ulclass=link-list><liclass=link-list><aclass=footer-linkhref=/about>About us</a></li><liclass=link-list><aclass=footer-linkhref=/community>Community</a></li><liclass=link-list><aclass=footer-linkhref=/contribute>Contribute</a></li><liclass=link-list><aclass=footer-linkhref=/code-of-conduct>Code of conduct</a></li></ul></div></div><divclass=link-column><divclass=footer-column><divclass=footer-header></div><ulclass=link-list><liclass=link-list><aclass=footer-linkhref=/gethelp>Get help</a></li><liclass=link-list><aclass=footer-linkhref=/terms>Terms of use</a></li><liclass=link-list><aclass=footer-linkhref=/privacy>Privacy</a></li><liclass=link-list><aclass=footer-linkhref=/press-kit>Press kit</a></li></ul></div></div><divclass=footer-actions><p>Sign up for the latest NumPy news, resources,<br>and more</p><formaction="https://numpy.us4.list-manage.com/subscribe/post?u=5ddd0d1d6e807900a8212481a&id=287fa4253c" method=postid=mc-embedded-subscribe-formname=mc-embedded-subscribe-formclass="validate sign-up-container" target=_blanknovalidate><divclass=sign-up-image><iclass="far fa-envelope"></i></div><inputtype=emailname=EMAILclass="required email sign-up-input" id=mce-EMAILaria-label="Input for email, press enter to submit" onkeypress="if(event.which===13||event.keyCode===13||event.key==='Enter')sendThankYou()"><divclass=submission-instructions>Press Enter</div><buttonclass=signup-buttononclick=sendThankYou()aria-label=Submit>