Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rossant/awesome-scientific-python
A curated list of awesome scientific Python resources
https://github.com/rossant/awesome-scientific-python
List: awesome-scientific-python
awesome awesome-list data-analysis data-science data-visualization list python science scientific-computing scientific-visualization
Last synced: 22 days ago
JSON representation
A curated list of awesome scientific Python resources
- Host: GitHub
- URL: https://github.com/rossant/awesome-scientific-python
- Owner: rossant
- Created: 2018-08-15T19:05:00.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-05-14T13:04:30.000Z (6 months ago)
- Last Synced: 2024-05-22T13:25:56.015Z (6 months ago)
- Topics: awesome, awesome-list, data-analysis, data-science, data-visualization, list, python, science, scientific-computing, scientific-visualization
- Language: Python
- Homepage:
- Size: 34.2 KB
- Stars: 239
- Watchers: 9
- Forks: 60
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: contributing.md
Awesome Lists containing this project
- awesome-research - Scientific Python - A curated list of awesome scientific Python resources (Programming / Citation Visualization)
- ultimate-awesome - awesome-scientific-python - A curated list of awesome scientific Python resources. (Other Lists / PowerShell Lists)
README
# Awesome Scientific Python [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
A curated list of awesome scientific Python resources.
# Contents
* [Contents](#contents)
* [Libraries](#libraries)
* [Core libraries](#core-libraries)
* [IPython/Jupyter](#ipythonjupyter)
* [NumPy](#numpy)
* [SciPy](#scipy)
* [pandas](#pandas)
* [scikit-learn](#scikit-learn)
* [matplotlib](#matplotlib)
* [SymPy](#sympy)
* [Other scientific libraries](#other-scientific-libraries)
* [Data visualization](#data-visualization)
* [3D visualization](#3d-visualization)
* [Image processing](#image-processing)
* [Graphs](#graphs)
* [Neural networks](#neural-networks)
* [Statistics](#statistics)
* [Compilation](#compilation)
* [Parallel computing](#parallel-computing)
* [GPU computing](#gpu-computing)
* [Domain-specific libraries](#domain-specific-libraries)
* [Geospatial data](#geospatial-data)
* [Astrophysics](#astrophysics)
* [Molecular simulations](#molecular-simulations)
* [Bioinformatics](#bioinformatics)
* [Neuroimaging](#neuroimaging)
* [Neuroscience](#neuroscience)
* [Mathematics](#mathematics)
* [Lists of libraries](#lists-of-libraries)
* [Books](#books)
* [Courses](#courses)
* [Tutorials](#tutorials)
* [Videos](#videos)
* [License](#license)# Libraries
## Core libraries
### IPython/Jupyter
*Effective interactive computing, data analysis, and visualization.*
* [IPython](http://ipython.org/) - Interactive Python computing in the terminal.
* [Jupyter](http://jupyter.org/) - Open interactive computing in many programming languages.
* [Jupyter Notebook](http://jupyter.org/install) - Web-based environment for interactive computing.
* [JupyterLab](https://jupyterlab.readthedocs.io/en/stable/) - Next-generation web-based interactive programming and computing environment.### NumPy
*Multidimensional array computing.*
* [NumPy](http://www.numpy.org/)
* [NumPy documentation](https://docs.scipy.org/doc/numpy/reference/routines.html)
* [NumPy tutorial](https://docs.scipy.org/doc/numpy/user/quickstart.html)
* [NumPy for MATLAB users](https://docs.scipy.org/doc/numpy/user/numpy-for-matlab-users.html)### SciPy
*Numerical computing library.*
* [SciPy](https://scipy.org/)
* [Getting started with SciPy](https://scipy.org/getting-started.html)
* [SciPy documentation](https://docs.scipy.org/doc/scipy/reference/)### pandas
*Data analysis library.*
* [pandas](https://pandas.pydata.org/)
* [pandas documentation](http://pandas.pydata.org/pandas-docs/stable/)### scikit-learn
*Machine learning library.*
* [scikit-learn](http://scikit-learn.org/stable/)
* [scikit-learn tutorial](http://scikit-learn.org/stable/tutorial/basic/tutorial.html)
* [scikit-learn user guide](http://scikit-learn.org/stable/user_guide.html)### matplotlib
*Data visualization and graphics library.*
* [matplotlib](https://matplotlib.org/)
* [matplotlib gallery](https://matplotlib.org/gallery/index.html)
* [matplotlib tutorials](https://matplotlib.org/tutorials/index.html)
* [matplotlib documentation](https://matplotlib.org/contents.html)### SymPy
*Symbolic computing library.*
* [SymPy](https://www.sympy.org/)
* [SymPy tutorial](http://docs.sympy.org/latest/tutorial/index.html)
* [SymPy documentation](http://docs.sympy.org/latest/index.html)## Other scientific libraries
### Data visualization
* [Bokeh](https://bokeh.pydata.org/en/latest/) - Interactive visualization for the web.
* [Altair](https://altair-viz.github.io/) - Declarative visualization in Python.
* [seaborn](https://seaborn.pydata.org/) - Statistical data visualization.
* [bqplot](https://github.com/bloomberg/bqplot) - 2D interactive visualization in Jupyter.
* [plotnine](https://plotnine.readthedocs.io/) - Grammar of Graphics implementation in Python based on ggplot2.
* [plotly](https://plot.ly/python/) - Interactive data visualization on the web.
* [HoloViews](http://holoviews.org/) - Data visualization library.
* [Napari](https://github.com/napari/napari) - Multi-dimensional image viewer for python.### 3D visualization
* [ipyvolume](https://ipyvolume.readthedocs.io/en/latest/) - 3D visualization with Jupyter.
* [VisPy](http://vispy.org/) - Interactive GPU-accelerated visualization.
* [Glumpy](http://glumpy.github.io/) - Scientific visualization in modern OpenGL.
* [vedo](https://vedo.embl.es/) - Scientific analysis and visualization based on VTK.
* [PyVista](https://docs.pyvista.org/) - 3D plotting and mesh analysis through a streamlined interface for the Visualization Toolkit (VTK).
* [Datoviz](https://datoviz.org/) - 2D/3D high-performance GPU visualization with Vulkan.### Image processing
* [scikit-image](https://scikit-image.org/) - Image processing in Python.
* [Pillow](https://pillow.readthedocs.io/en/latest/) - Python Imaging Library (PIL) fork in Python.
* [OpenCV](https://opencv.org/) - Computer vision library.### Graphs
* [NetworkX](https://networkx.github.io/) - Graph and network structures and algorithms.
* [Graph-tool](https://graph-tool.skewed.de/) - Manipulation and statistical analysis of graphs.### Neural networks
* [PyTorch](https://pytorch.org/) - Neural networks and deep learning in Python.
* [Keras](https://keras.io/) - Python deep learning library.
* [TensorFlow](https://www.tensorflow.org/) - Machine learning framework.
* [Caffe](http://caffe.berkeleyvision.org/) - Deep learning framework.### Statistics
* [PyMC3](http://docs.pymc.io/) - Bayesian statistical modeling.
* [statsmodels](http://www.statsmodels.org/) - Statistical models.
* [emcee](http://dfm.io/emcee/) - ensemble sampler for markov chain monte carlo.### Compilation
* [Numba](https://numba.pydata.org/) - JIT compilation of Python code
* [Cython](http://cython.org/) - Combine C and Python### Parallel computing
* [ipyparallel](https://ipyparallel.readthedocs.io/en/latest/) - Parallel computing with IPython
* [Dask](https://github.com/dask/dask) - Parallel computing with task scheduling.### GPU computing
* [CuPy](https://cupy.chainer.org/) - NumPy-like library with CUDA.
* [PyCUDA](https://developer.nvidia.com/pycuda) - Use CUDA with Python.## Domain-specific libraries
### Geospatial data
* [GeoPandas](https://geopandas.readthedocs.io/en/latest/) - pandas for geospatial data.
* [Shapely](https://github.com/Toblerity/Shapely) - Manipulation and analysis of geometric objects.
* [Folium](http://python-visualization.github.io/folium/) - Interactive maps in Python with leaflet.js.### Astrophysics
* [Astropy](http://www.astropy.org/) - Core package for astronomy.
* [AstroML](http://www.astroml.org/) - Machine learning for astronomy### Molecular simulations
* [MGLTools](http://mgltools.scripps.edu/) - Visualization and analysis of molecular structures.
* [MDAnalysis](https://www.mdanalysis.org/) - Molecular dynamics simulations
* [pysimm](https://pysimm.org/) - Molecular simulations
* [PyMOL](https://pymol.org/2/) - Molecular visualization
* [Molecular Modeling Toolkit](https://bitbucket.org/khinsen/mmtk)### Bioinformatics
* [Biopython](https://biopython.org/) - Biological computations.
* [PyBioMed](https://pybiomed.readthedocs.io/en/latest/index.html) - Descriptors of biological molecules.
* [khmer](https://github.com/dib-lab/khmer) - k-mer counting, filtering, and graph traversal.### Neuroimaging
* [NiBabel](https://github.com/nipy/nibabel) - Neuro-imaging file formats.
* [Nilearn](https://nilearn.github.io/) - Machine learning for neuro-imaging.
* [NiTime](http://nipy.org/nitime/) - Time series.
* [MNE](https://github.com/mne-tools/mne-python) - MEG and EEG.
* [DIPY](https://github.com/nipy/dipy) - Diffusion MR imaging.
* [Expyriment](https://github.com/expyriment/expyriment) - Behavioral and neuroimaging experiments.### Neuroscience
* [Brian2](https://github.com/brian-team/brian2) - Simulations of spiking neural networks.
* [Spyking Circus](https://spyking-circus.readthedocs.io/en/latest/) - Spike sorting on large extracellular recordings.
* [Klusta](https://github.com/kwikteam/klusta) - Spike detection and clustering-based spike sorting.
* [phy](https://phy.readthedocs.io/en/latest/) - Manual spike sorting for high-density multielectrode arrays.
* [NeuroTools](https://pythonhosted.org/NeuroTools/) - Tools for neural simulations.
* [Neo](https://neo.readthedocs.io) - File formats for neuroscience.
* [PsychoPy](http://psychopy.org/) - Psychology and neuroscience experiments.
* [Nengo](https://github.com/nengo/nengo) - Simulation of large-scale brain models
* [PyGaze](http://www.pygaze.org/) - Eye tracking.### Mathematics
* [Sage](http://www.sagemath.org) - Mathematics software system.
* [mpmath](http://mpmath.org/) - arithmetic with arbitrary precision.## Lists of libraries
* [Python Numeric and Scientific](https://wiki.python.org/moin/NumericAndScientific) - on python.org.
* [Scientific Computing Tools for Python](https://www.scipy.org/about.html) - on scipy.org.
* [Useful libraries for data science in Python](https://github.com/rasbt/pattern_classification/blob/master/resources/python_data_libraries.md) - by Sebastian Raschka.
* [Python for Scientific Audio](https://github.com/faroit/awesome-python-scientific-audio) - by Fabian-Robert Stöter.# Books
* [Python Data Science Handbook](https://jakevdp.github.io/PythonDataScienceHandbook/) - Jake VanderPlas, O'Reilly, 2016, 541 pages.
* [Python for Data Analysis](http://shop.oreilly.com/product/0636920050896.do) - William McKinney, O'Reilly, 2017, 544 pages (second edition).
* [Learning IPython for Interactive Computing and Data Analysis](https://www.packtpub.com/big-data-and-business-intelligence/learning-ipython-interactive-computing-and-data-visualization-sec), Cyrille Rossant, Packt Publishing, 2015, 200 pages (second edition).
* [IPython Interactive Computing and Visualization Cookbook](https://www.packtpub.com/big-data-and-business-intelligence/ipython-interactive-computing-and-visualization-cookbook-second-e), Cyrille Rossant, Packt Publishing, 2018, 548 pages (second edition).
* [A Primer on Scientific Programming with Python](https://www.springer.com/gp/book/9783642549595) - Hans Petter Langtangen, Springer, 2014, 872 pages.
* [Exploring Data with Python](https://www.manning.com/books/exploring-data-with-python) - Naomi Ceder, Manning 2018, 110 pages.
* [Deep Learning with Python](https://www.manning.com/books/deep-learning-with-python) - François Chollet, Manning, 2017, 384 pages.
* [Python Machine Learning](https://www.packtpub.com/big-data-and-business-intelligence/python-machine-learning-second-edition) - Sebastian Raschka & Vahid Mirjalili, Packt Publishing, 2017, 622 pages (second edition).# Courses
* [Stat 159/259, Reproducible and Collaborative Data Science](https://berkeley-stat159-f17.github.io/stat159-f17/index.html) - Fernando Perez, Berkeley University, 2017.
* [CME 193, Introduction to Scientific Python](https://web.stanford.edu/~schmit/cme193/) - Stanford University, Sven Schmit, 2015.
* [Using Python for Research](https://online-learning.harvard.edu/course/using-python-research) - Jukka-Pekka Onnela, Harvard University Online Learning.
* [Introduction to Data Analytics and Machine Learning with Python](https://www.city.ac.uk/courses/short-courses/introduction-to-data-analysis-and-machine-learning-with-python) - University of London.
* [PHY 546: Python for Scientific Computing](http://bender.astro.sunysb.edu/classes/python-science/) - Stony Brook University, Michael Zingale, 2018.
* [Python for Data Analysis](https://github.com/cuttlefishh/python-for-data-analysis) - Luke Thompson, NOAA.
* [Coursera Data Science with Python](https://www.coursera.org/specializations/data-science-python) - University of Michigan.
* [edX Python for Data Science](https://www.edx.org/course/python-for-data-science) - UC San Diego, Ilkay Altintas, Leo Porter.
* [edX Foundations of Data Science: Computational Thinking with Python](https://www.edx.org/course/foundations-data-science-computational-uc-berkeleyx-data8-1x) - UC Berkeley, Ani Adhikari, John DeNero, David Wagner.
* [Python Course](https://www.python-course.eu/index.php) - Bernd Klein.
* [Intro to Python for Data Science](https://www.datacamp.com/courses/intro-to-python-for-data-science) - DataCamp, Filip Schouwenaars.
* [Schools using Python](https://wiki.python.org/moin/SchoolsUsingPython) - on python.org.
* [Python NumPy for Data Science](https://programiz.pro/course/python-numpy-for-data-science) - by Programiz PRO.# Tutorials
* [SciPy Lecture Notes](https://www.scipy-lectures.org/)
* [Lectures on scientific computing with Python](https://github.com/jrjohansson/scientific-python-lectures) - Robert Johansson.
* [NumPy Illustrated - The Visual Guide to NumPy](https://betterprogramming.pub/numpy-illustrated-the-visual-guide-to-numpy-3b1d4976de1d?sk=57b908a77aa44075a49293fa1631dd9b) - Lev Maximov.
* [Python NumPy tutorial](http://cs231n.github.io/python-numpy-tutorial/) - Justin Johnson, Stanford University.
* [Real Python Python Data Science Tutorials](https://realpython.com/tutorials/data-science/)
* [A gallery of interesting Jupyter Notebooks](https://github.com/jupyter/jupyter/wiki/A-gallery-of-interesting-Jupyter-Notebooks)
* [List of Python Data Science Tutorials](https://github.com/ujjwalkarn/DataSciencePython) - Ujjwal Karn.
* [pyOpenSci Python Package Guide](https://www.pyopensci.org/python-package-guide/)# Videos
* [SciPy 2024: Scientific Computing with Python Conference](https://youtube.com/playlist?list=PL1PbeFStIOoO7rDLs431H-rn0h24Wr80S) - 60 YouTube videos.
* [SciPy 2023: Scientific Computing with Python Conference](https://youtube.com/playlist?list=PL1PbeFStIOoOd01KhBeba-byU5E5dJ716) - 59 YouTube videos.
* [SciPy 2022: Scientific Computing with Python Conference](https://youtube.com/playlist?list=PLYx7XA2nY5Ge3LsWy500pi5bdHEiAdQB5) - 10 YouTube videos.
* [SciPy 2021: Scientific Computing with Python Conference](https://www.youtube.com/playlist?list=PLYx7XA2nY5GesARqNMImG3NnX3_bWq-lT) - 61 YouTube videos.
* [SciPy 2019: Scientific Computing with Python Conference](https://www.youtube.com/playlist?list=PLYx7XA2nY5GcDQblpQ_M1V3PQPoLWiDAC) - 102 YouTube videos.
* [SciPy 2018: Scientific Computing with Python Conference](https://www.youtube.com/playlist?list=PLYx7XA2nY5Gd-tNhm79CNMe_qvi35PgUR) - 97 YouTube videos.
* [SciPy 2017: Scientific Computing with Python Conference](https://www.youtube.com/playlist?list=PLYx7XA2nY5GfdAFycPLBdUDOUtdQIVoMf) - 91 YouTube videos.
* [SciPy 2016: Scientific Computing with Python Conference](https://www.youtube.com/playlist?list=PLYx7XA2nY5Gf37zYZMw6OqGFRPjB1jCy6) - 92 YouTube videos.
* [SciPy 2015: Scientific Computing with Python Conference](https://www.youtube.com/playlist?list=PLYx7XA2nY5Gcpabmu61kKcToLz0FapmHu) - 116 YouTube videos.
* [SciPy 2014: Scientific Computing with Python Conference](https://www.youtube.com/playlist?list=PLYx7XA2nY5GfuhCvStxgbynFNrxr3VFog) - 121 YouTube videos.
* [SciPy 2013: Scientific Computing with Python Conference](https://www.youtube.com/playlist?list=PLYx7XA2nY5GeTWcUQTbXVdllyp-Ie3r-y) - 33 YouTube videos.# License
[![CC0](http://i.creativecommons.org/p/zero/1.0/88x31.png)](http://creativecommons.org/publicdomain/zero/1.0/)
To the extent possible under law, [Cyrille Rossant](http://cyrille.rossant.net) has waived all copyright and related or neighboring rights to this work.