Array programming with NumPy
Charles R. Harris,K. Jarrod Millman,Stefan van der Walt,Stefan van der Walt,Ralf Gommers,Pauli Virtanen,David Cournapeau,Eric Wieser,Julian Taylor,Sebastian Berg,Nathaniel J. Smith,Robert Kern,Matti Picus,Stephan Hoyer,Marten H. van Kerkwijk,Matthew Brett,Matthew Brett,Allan Haldane,Jaime Fernández del Río,Mark Wiebe,Mark Wiebe,Pearu Peterson,Pierre Gérard-Marchant,Kevin Sheppard,Tyler Reddy,Warren Weckesser,Hameer Abbasi,Christoph Gohlke,Travis E. Oliphant +28 more
Reads0
Chats0
TLDR
In this paper, the authors review how a few fundamental array concepts lead to a simple and powerful programming paradigm for organizing, exploring and analysing scientific data, and their evolution into a flexible interoperability layer between increasingly specialized computational libraries is discussed.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 waves1 and in the first imaging of a black hole2. 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. 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.read more
Citations
More filters
Journal ArticleDOI
Which molecule traces what: Chemical diagnostics of protostellar sources
Łukasz Tychoniec,Ewine F. van Dishoeck,Merel L. R. van ’t Hoff,Martijn L. van Gelder,Benoît Tabone,Yuan Chen,Daniel Harsono,Charles L. H. Hull,Michiel R. Hogerheijde,Nadia M. Murillo,John J. Tobin +10 more
TL;DR: In this paper, the authors used a suite of Atacama Large Millimeter/submillimeter Array (ALMA) datasets in Band 6 (1 mm), Band 5 (1.8 mm) and Band 3 (3 mm) at spatial resolutions 0.5 - 3" for 16 protostellar sources.
Journal ArticleDOI
On the origin of the mass-metallicity gradient relation in the local Universe
Piyush Sharda,Piyush Sharda,Mark R. Krumholz,Mark R. Krumholz,Emily Wisnioski,Emily Wisnioski,Ayan Acharyya,Ayan Acharyya,Ayan Acharyya,Christoph Federrath,Christoph Federrath,John C. Forbes +11 more
TL;DR: In this article, the same physical principles govern the shape of both: centrally-peaked metal production favours steeper gradients, and this steepening is diluted by the addition of metal-poor gas, which is supplied by inward advection for low-mass galaxies and by cosmological accretion for massive galaxies.
Journal ArticleDOI
The Fornax3D project: Assembly histories of lenticular galaxies from a combined dynamical and population orbital analysis
A. Poci,A. Poci,Richard M. McDermid,Mariya Lyubenova,Ling Zhu,G. van de Ven,Enrichetta Iodice,Enrichetta Iodice,Lodovico Coccato,F. Pinna,Enrico Maria Corsini,Enrico Maria Corsini,Jesús Falcón-Barroso,Jesús Falcón-Barroso,Dimitri A. Gadotti,Robert J. J. Grand,Katja Fahrion,Ignacio Martín-Navarro,Ignacio Martín-Navarro,Ignacio Martín-Navarro,Marc Sarzi,Marc Sarzi,Sébastien Viaene,P. T. de Zeeuw,P. T. de Zeeuw +24 more
TL;DR: In this article, a self-consistent combined stellar dynamical and population galaxy model is proposed to estimate the assembly histories of galaxies. But these measurements are observationally difficult owing to the diversity of formation paths that lead to the same present-day state of a galaxy.
Journal ArticleDOI
PyCO2SYS v1.8: marine carbonate system calculations in Python
TL;DR: PyCO2SYS as discussed by the authors is a Python package for solving the marine carbonate system, which uses automatic differentiation to solve the CO2 system and calculate chemical buffer factors, ensuring that the effect of every modelled solute and reaction is accurately included in all its results.
Journal ArticleDOI
MLatom 2: An Integrative Platform for Atomistic Machine Learning.
TL;DR: MLatom 2 as mentioned in this paper provides an integrative platform for a wide variety of AML simulations by implementing from scratch and interfacing existing software for a range of state-of-the-art models.
References
More filters
Journal Article
Scikit-learn: Machine Learning in Python
Fabian Pedregosa,Gaël Varoquaux,Alexandre Gramfort,Vincent Michel,Bertrand Thirion,Olivier Grisel,Mathieu Blondel,Peter Prettenhofer,Ron Weiss,Vincent Dubourg,Jake Vanderplas,Alexandre Passos,David Cournapeau,Matthieu Brucher,Matthieu Perrot,Edouard Duchesnay +15 more
TL;DR: Scikit-learn is a Python module integrating a wide range of state-of-the-art machine learning algorithms for medium-scale supervised and unsupervised problems, focusing on bringing machine learning to non-specialists using a general-purpose high-level language.
Posted Content
Scikit-learn: Machine Learning in Python
Fabian Pedregosa,Gaël Varoquaux,Alexandre Gramfort,Vincent Michel,Bertrand Thirion,Olivier Grisel,Mathieu Blondel,Andreas Müller,Joel Nothman,Gilles Louppe,Peter Prettenhofer,Ron Weiss,Vincent Dubourg,Jake Vanderplas,Alexandre Passos,David Cournapeau,Matthieu Brucher,Matthieu Perrot,Edouard Duchesnay +18 more
TL;DR: Scikit-learn as mentioned in this paper is a Python module integrating a wide range of state-of-the-art machine learning algorithms for medium-scale supervised and unsupervised problems.
Journal ArticleDOI
Matplotlib: A 2D Graphics Environment
TL;DR: Matplotlib is a 2D graphics package used for Python for application development, interactive scripting, and publication-quality image generation across user interfaces and operating systems.
Journal ArticleDOI
SciPy 1.0--Fundamental Algorithms for Scientific Computing in Python
Pauli Virtanen,Ralf Gommers,Travis E. Oliphant,Matt Haberland,Matt Haberland,Tyler Reddy,David Cournapeau,Evgeni Burovski,Pearu Peterson,Warren Weckesser,Jonathan Bright,Stefan van der Walt,Matthew Brett,Joshua Wilson,K. Jarrod Millman,Nikolay Mayorov,Andrew Nelson,Eric Jones,Robert Kern,Eric B. Larson,CJ Carey,Ilhan Polat,Yu Feng,Eric Moore,Jake Vanderplas,Denis Laxalde,Josef Perktold,Robert Cimrman,Ian Henriksen,Ian Henriksen,E. A. Quintero,Charles R. Harris,Anne M. Archibald,Antônio H. Ribeiro,Fabian Pedregosa,Paul van Mulbregt,SciPy . Contributors +36 more
TL;DR: SciPy as discussed by the authors is an open source scientific computing library for the Python programming language, which includes functionality spanning clustering, Fourier transforms, integration, interpolation, file I/O, linear algebra, image processing, orthogonal distance regression, minimization algorithms, signal processing, sparse matrix handling, computational geometry, and statistics.
Proceedings ArticleDOI
TensorFlow: a system for large-scale machine learning
Martín Abadi,Paul Barham,Jianmin Chen,Zhifeng Chen,Andy Davis,Jeffrey Dean,Matthieu Devin,Sanjay Ghemawat,Geoffrey Irving,Michael Isard,Manjunath Kudlur,Josh Levenberg,Rajat Monga,Sherry Moore,Derek G. Murray,Benoit Steiner,Paul A. Tucker,Vijay K. Vasudevan,Pete Warden,Martin Wicke,Yuan Yu,Xiaoqiang Zheng +21 more
TL;DR: TensorFlow as mentioned in this paper is a machine learning system that operates at large scale and in heterogeneous environments, using dataflow graphs to represent computation, shared state, and the operations that mutate that state.
Related Papers (5)
SciPy 1.0: fundamental algorithms for scientific computing in Python.
Pauli Virtanen,Ralf Gommers,Travis E. Oliphant,Matt Haberland,Matt Haberland,Tyler Reddy,David Cournapeau,Evgeni Burovski,Pearu Peterson,Warren Weckesser,Jonathan Bright,Stefan van der Walt,Matthew Brett,Joshua Wilson,K. Jarrod Millman,Nikolay Mayorov,Andrew Nelson,Eric Jones,Robert Kern,Eric B. Larson,CJ Carey,Ilhan Polat,Yu Feng,Eric Moore,Jake Vanderplas,Denis Laxalde,Josef Perktold,Robert Cimrman,Ian Henriksen,Ian Henriksen,E. A. Quintero,Charles R. Harris,Anne M. Archibald,Antônio H. Ribeiro,Fabian Pedregosa,Paul van Mulbregt,SciPy . Contributors +36 more
Astropy: A community Python package for astronomy
Thomas P. Robitaille,Erik Tollerud,Perry Greenfield,Michael Droettboom,Erik Bray,Tom Aldcroft,Matt Davis,Adam Ginsburg,Adrian M. Price-Whelan,Wolfgang Kerzendorf,A. Conley,Neil H. M. Crighton,Kyle Barbary,Demitri Muna,Henry C. Ferguson,Frédéric Grollier,Madhura Parikh,Prasanth H. Nair,Hans Moritz Günther,Christoph Deil,Julien Woillez,Simon Conseil,Roban Kramer,J. Turner,Leo Singer,R. T. Fox,Benjamin A. Weaver,Victor Zabalza,Zachary I. Edwards,K. Azalee Bostroem,Douglas Burke,Andrew R. Casey,Steven M. Crawford,Nadia Dencheva,Justin Ely,Tim Jenness,Kathleen Labrie,Pey Lian Lim,Francesco Pierfederici,Andrew Pontzen,Andy Ptak,Brian L. Refsdal,Mathieu Servillat,Ole Streicher +43 more