42
views
0
recommends
+1 Recommend
0 collections
    0
    shares
      • Record: found
      • Abstract: found
      • Article: found
      Is Open Access

      Array programming with NumPy

      review-article

      1 , , 2 , 3 , 4 , , 2 , 4 , 5 , , 6 , 7 , 8 , 9 , 10 , 11 , 4 , 12 , 13 , 4 , 14 , 15 , 2 , 16 , 17 , 18 , 19 , 20 , 6 , 21 , 22 , 23 , 24 , 25 , 26 , 4 , 6 , 27 , 6

      Nature

      Nature Publishing Group UK

      Computational neuroscience, Solar physics, Computational science, Computer science, Software

      Read this article at

      Bookmark
          There is no author summary for this article yet. Authors can add summaries to their articles on ScienceOpen to make them more accessible to a non-specialist audience.

          Abstract

          Array programming provides a powerful, compact and expressive syntax for accessing, manipulating and operating on data in vectors, matrices and higher-dimensional arrays. NumPy is the primary array programming library for the Python language. It has an essential role in research analysis pipelines in fields as diverse as physics, chemistry, astronomy, geoscience, biology, psychology, materials science, engineering, finance and economics. For example, in astronomy, NumPy was an important part of the software stack used in the discovery of gravitational waves 1 and in the first imaging of a black hole 2 . Here we review how a few fundamental array concepts lead to a simple and powerful programming paradigm for organizing, exploring and analysing scientific data. NumPy is the foundation upon which the scientific Python ecosystem is constructed. It is so pervasive that several projects, targeting audiences with specialized needs, have developed their own NumPy-like interfaces and array objects. Owing to its central position in the ecosystem, NumPy increasingly acts as an interoperability layer between such array computation libraries and, together with its application programming interface (API), provides a flexible framework to support the next decade of scientific and industrial analysis.

          Abstract

          NumPy is the primary array programming library for Python; here its fundamental concepts are reviewed and its evolution into a flexible interoperability layer between increasingly specialized computational libraries is discussed.

          Related collections

          Most cited references 31

          • Record: found
          • Abstract: not found
          • Article: not found

          Matplotlib: A 2D Graphics Environment

           John Hunter (2007)
            Bookmark
            • Record: found
            • Abstract: found
            • Article: found
            Is Open Access

            SciPy 1.0: fundamental algorithms for scientific computing in Python

            SciPy is an open-source scientific computing library for the Python programming language. Since its initial release in 2001, SciPy has become a de facto standard for leveraging scientific algorithms in Python, with over 600 unique code contributors, thousands of dependent packages, over 100,000 dependent repositories and millions of downloads per year. In this work, we provide an overview of the capabilities and development practices of SciPy 1.0 and highlight some recent technical developments.
              Bookmark
              • Record: found
              • Abstract: not found
              • Article: not found

              Python for Scientific Computing

                Bookmark

                Author and article information

                Contributors
                millman@berkeley.edu
                stefanv@berkeley.edu
                ralf.gommers@gmail.com
                Journal
                Nature
                Nature
                Nature
                Nature Publishing Group UK (London )
                0028-0836
                1476-4687
                16 September 2020
                16 September 2020
                2020
                : 585
                : 7825
                : 357-362
                Affiliations
                [1 ]Independent researcher, Logan, UT USA
                [2 ]ISNI 0000 0001 2181 7878, GRID grid.47840.3f, Brain Imaging Center, , University of California, Berkeley, ; Berkeley, CA USA
                [3 ]ISNI 0000 0001 2181 7878, GRID grid.47840.3f, Division of Biostatistics, , University of California, Berkeley, ; Berkeley, CA USA
                [4 ]ISNI 0000 0001 2181 7878, GRID grid.47840.3f, Berkeley Institute for Data Science, , University of California, Berkeley, ; Berkeley, CA USA
                [5 ]ISNI 0000 0001 2214 904X, GRID grid.11956.3a, Applied Mathematics, Stellenbosch University, ; Stellenbosch, South Africa
                [6 ]Quansight, Austin, TX USA
                [7 ]ISNI 0000 0001 1013 7965, GRID grid.9681.6, Department of Physics, , University of Jyväskylä, ; Jyväskylä, Finland
                [8 ]ISNI 0000 0001 1013 7965, GRID grid.9681.6, Nanoscience Center, , University of Jyväskylä, ; Jyväskylä, Finland
                [9 ]Mercari JP, Tokyo, Japan
                [10 ]ISNI 0000000121885934, GRID grid.5335.0, Department of Engineering, , University of Cambridge, ; Cambridge, UK
                [11 ]ISNI 0000 0001 2172 9288, GRID grid.5949.1, Independent researcher, ; Karlsruhe, Germany
                [12 ]Independent researcher, Berkeley, CA USA
                [13 ]GRID grid.504464.7, Enthought, ; Austin, TX USA
                [14 ]GRID grid.420451.6, Google Research, ; Mountain View, CA USA
                [15 ]ISNI 0000 0001 2157 2938, GRID grid.17063.33, Department of Astronomy and Astrophysics, , University of Toronto, ; Toronto, Ontario Canada
                [16 ]ISNI 0000 0004 1936 7486, GRID grid.6572.6, School of Psychology, , University of Birmingham, ; Edgbaston, Birmingham UK
                [17 ]ISNI 0000 0001 2248 3398, GRID grid.264727.2, Department of Physics, , Temple University, ; Philadelphia, PA USA
                [18 ]GRID grid.472568.a, Google, ; Zurich, Switzerland
                [19 ]ISNI 0000 0001 2288 9830, GRID grid.17091.3e, Department of Physics and Astronomy, , The University of British Columbia, ; Vancouver, British Columbia Canada
                [20 ]ISNI 0000 0001 0316 7795, GRID grid.467171.2, Amazon, ; Seattle, WA USA
                [21 ]Independent researcher, Saue, Estonia
                [22 ]ISNI 0000000110107715, GRID grid.6988.f, Department of Mechanics and Applied Mathematics, , Institute of Cybernetics at Tallinn Technical University, ; Tallinn, Estonia
                [23 ]ISNI 0000 0004 1936 738X, GRID grid.213876.9, Department of Biological and Agricultural Engineering, , University of Georgia, ; Athens, GA USA
                [24 ]France-IX Services, Paris, France
                [25 ]ISNI 0000 0004 1936 8948, GRID grid.4991.5, Department of Economics, , University of Oxford, ; Oxford, UK
                [26 ]ISNI 0000 0004 0428 3079, GRID grid.148313.c, CCS-7, Los Alamos National Laboratory, ; Los Alamos, NM USA
                [27 ]ISNI 0000 0001 0668 7243, GRID grid.266093.8, Laboratory for Fluorescence Dynamics, Biomedical Engineering Department, , University of California, Irvine, ; Irvine, CA USA
                Article
                2649
                10.1038/s41586-020-2649-2
                7759461
                32939066
                © The Author(s) 2020

                Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/.

                Categories
                Review Article
                Custom metadata
                © The Author(s), under exclusive licence to Springer Nature Limited 2020

                Comments

                Comment on this article