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
CMB power spectra and cosmological parameters from Planck PR4 with CamSpec
TL;DR: In this article , angular power spectra and cosmological parameter constraints derived from the Planck PR4 (NPIPE ) maps of the Cosmic Microwave Background are presented. But they do not consider the effect of noise on the frequency maps.
Journal ArticleDOI
Embracing New Techniques in Deep Learning for Estimating Image Memorability
TL;DR: Five alternative deep learning models which exploit developments in the field from the last five years, largely the introduction of residual neural networks, which are intended to allow the model to use semantic information in the memorability estimation process are proposed and evaluated.
Journal ArticleDOI
The Architecture of the V892 Tau System: The Binary and Its Circumbinary Disk
Feng Long,Sean M. Andrews,Justin Vega,David J. Wilner,Claire J. Chandler,Enrico Ragusa,Richard Teague,Laura M. Pérez,Nuria Calvet,John M. Carpenter,Thomas Henning,Woojin Kwon,Hendrik Linz,Luca Ricci +13 more
TL;DR: In this paper, high-resolution millimeter continuum and CO line observations for the circumbinary disk around V892 Tau were used to constrain the stellar and disk properties.
Journal ArticleDOI
Weighing the Galactic disk in sub-regions of the solar neighbourhood using Gaia DR2
Abstract: We infer the gravitational potential of the Galactic disk by analysing the phase-space densities of 120 stellar samples in 40 spatially separate sub-regions of the solar neighbourhood, using Gaia's second data release (DR2), in order to quantify spatially dependent systematic effects that bias this type of measurement. The gravitational potential was inferred under the assumption of a steady state in the framework of a Bayesian hierarchical model. We performed a joint fit of our stellar tracers' three-dimensional velocity distribution, while fully accounting for the astrometric uncertainties of all stars. The inferred gravitational potential is compared, post-inference, to a model for the baryonic matter and halo dark matter components. We see an unexpected but clear trend for all 40 spatially separate sub-regions: Compared to the potential derived from the baryonic model, the inferred gravitational potential is significantly steeper close to the Galactic mid-plane (<60 pc), but flattens such that the two agree well at greater distances (~400 pc). The inferred potential implies a total matter density distribution that is highly concentrated to the Galactic mid-plane and decays quickly with height. Apart from this, there are discrepancies between stellar samples, implying spatially dependent systematic effects which are, at least in part, explained by substructures in the phase-space distributions. In terms of the inferred matter density distribution, the very low matter density that is inferred at greater heights is inconsistent with the observed scale height and matter distribution of the stellar disk, which cannot be explained by a misunderstood density of cold gas or other hidden mass. Our interpretation is that these results must be biased by a time-varying phase-space structure, possibly a breathing mode, that is large enough to affect all stellar samples in the same manner.
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