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
Highly accurate protein structure prediction with AlphaFold
John M. Jumper,Richard O. Evans,Alexander Pritzel,Tim Green,Michael Figurnov,Olaf Ronneberger,Kathryn Tunyasuvunakool,Russell Bates,Augustin Žídek,Anna Potapenko,Alex Bridgland,Clemens Meyer,Simon A. A. Kohl,Andrew J. Ballard,Andrew Cowie,Bernardino Romera-Paredes,Stanislav Nikolov,R. D. Jain,Jonas Adler,Trevor Back,Stig Petersen,David Reiman,Ellen Clancy,Michal Zielinski,Martin Steinegger,Michalina Pacholska,Tamas Berghammer,Sebastian Bodenstein,David L. Silver,Oriol Vinyals,Andrew W. Senior,Koray Kavukcuoglu,Pushmeet Kohli,Demis Hassabis +33 more
TL;DR: For example, AlphaFold as mentioned in this paper predicts protein structures with an accuracy competitive with experimental structures in the majority of cases using a novel deep learning architecture. But the accuracy is limited by the fact that no homologous structure is available.
Journal Article
The Observation of Gravitational Waves from a Binary Black Hole Merger
TL;DR: The first direct detection of gravitational waves and the first observation of a binary black hole merger were reported in this paper, with a false alarm rate estimated to be less than 1 event per 203,000 years, equivalent to a significance greater than 5.1σ.
Journal ArticleDOI
seaborn: statistical data visualization
seaborn: Statistical data visualization
Michael Waskom,Olga Botvinnik,Maoz Gelbart,Joel Ostblom,Paul Hobson,Saulius Lukauskas,David C Gemperline,Tom Augspurger,Yaroslav O. Halchenko,Jordi Warmenhoven,John B. Cole,Julian de Ruiter,Jake Vanderplas,Stephan Hoyer,Cameron Pye,Alistair Miles,Corban Swain,Kyle Meyer,Marcel Martin,Bachant, Pete Quintero, Eric,Gero Kunter,Santi Villalba,Brian,Clark Fitzgerald,Constantine Evans,Mike Lee Williams,Drew O'Kane,Tal Yarkoni,Thomas Brunner +28 more
TL;DR: Seaborn as discussed by the authors is a library for making statistical graphics in Python that provides a high-level interface to matplotlib and integrates closely with pandas data structures, which makes it easy to translate questions about data into graphics that can answer them.
Journal ArticleDOI
Cellpose: a generalist algorithm for cellular segmentation
TL;DR: This work introduces a generalist, deep learning-based segmentation method called Cellpose, which can precisely segment cells from a wide range of image types and does not require model retraining or parameter adjustments.
References
More filters
Journal ArticleDOI
High-resolution linear polarimetric imaging for the event horizon telescope
Andrew A. Chael,Michael D. Johnson,Ramesh Narayan,Sheperd S. Doeleman,Sheperd S. Doeleman,John F. C. Wardle,Katherine L. Bouman +6 more
TL;DR: Polarimetric Maximum Entropy Method (MEM) as discussed by the authors was proposed for image reconstruction of active galactic nuclei (AGNs) from very long baseline interferometry (VLBI) images.
Proceedings ArticleDOI
Model-driven Level 3 BLAS Performance Optimization on Loongson 3A Processor
TL;DR: This research analyzed the Loongson 3A architecture and built a performance model to highlight the key point, L1 data cache misses, which is different from level 3 BLAS optimization on the mainstream x86 CPU.
Journal ArticleDOI
SunPy—Python for solar physics
Stuart Mumford,Steven Christe,David Pérez-Suárez,Jack Ireland,Albert Y. Shih,Andrew Inglis,Andrew Inglis,Simon Liedtke,Russell J. Hewett,Florian Mayer,Keith Hughitt,N. Freij,Tomas Meszaros,Samuel Bennett,Michael Malocha,John G Evans,Ankit Agrawal,Andrew J. Leonard,Thomas P. Robitaille,Benjamin Mampaey,Jose Iván Campos-Rozo,Michael S. Kirk +21 more
TL;DR: SunPy as discussed by the authors is a data-analysis environment specializing in providing the software necessary to analyse solar and heliospheric data in Python, which can leverage the many existing tools already available in Python.
Journal ArticleDOI
Software Carpentry: Getting Scientists to Write Better Code by Making Them More Productive
TL;DR: What is software carpentry, a one-semester course that teaches scientists and engineers the "common core" of modern software development, and why?
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