# Python Packages by Domain Stack https://github.com/Quansight/scipy-2022-swag ### Astronomy Scientific Python libraries for analyzing celestial bodies. - Astropy: Common core package for Astronomy in Python. GitHub: https://github.com/astropy/astropy Website: https://www.astropy.org - Poliastro: Interactive Astrodynamics and Orbital Mechanics, with a focus on ease of use, speed, and quick visualization. GitHub: https://github.com/poliastro/poliastro Website: https://docs.poliastro.space/en/stable/ - SunPy: A community-developed, free and open-source solar data analysis environment. GitHub: https://github.com/sunpy/sunpy Website: https://sunpy.org - SkyPy: Package for simulating the astrophysical sky. GitHub: https://github.com/skypyproject/skypy Website: https://skypy.readthedocs.io/en/stable/ ### Neuroscience - DiPy: Analysis of 3D/4D+ medical images GitHub: https://github.com/dipy/dipy Website: https://dipy.org/ - MNE-Python: Analysis of human neurophysiological data GitHub: https://github.com/mne-tools/mne-python Website: https://mne.tools/ - Nibabel: Neuroimaging file format wrangling GitHub: https://github.com/nipy/nibabel Website: https://nipy.org/nibabel/ - Nilearn: Analysis of MRI brain volumes GitHub: https://github.com/nilearn/nilearn Website: https://nilearn.github.io - Nipype: Neuroimaging pipelines and interfaces GitHub: https://github.com/nipy/nipype Website: https://nipype.readthedocs.io/en/latest/index.html - PySurfer: Cortical surface visualization GitHub: https://github.com/nipy/PySurfer Website: https://pysurfer.github.io/ ### Computer Vision - scikit-image: A collection of algorithms for image processing. GitHub: https://github.com/scikit-image/scikit-image Website: https://scikit-image.org - scikit-video: Tools for measurement and processing of videos. GitHub: https://github.com/scikit-video/scikit-video Website: http://www.scikit-video.org/ ### Packaging Scientific Python tools for packaging. - conda-forge: A community-led collection of recipes, build infrastructure and distributions for the conda package manager. GitHub: https://github.com/conda-forge Website: https://conda-forge.org - conda: Package, dependency and environment management for any language. GitHub: https://github.com/conda/conda Website: https://docs.conda.io/en/latest/ - scikit-build: The official adaptor for CMake in Python packaging to build binary extensions, along with Python packages for CMake, Ninja, and other tooling. GitHub: https://github.com/scikit-build Website: https://scikit-build.org - cibuildwheel: The PyPA tool for building binary wheels for all supported platforms. GitHub: https://github.com/pypa/cibuildwheel Website: https://cibuildwheel.readthedocs.io ### Performance Scientific Python packages for improving performance when coding in Python - Dask: A library that allows parallelism for analytics and performance at scale. GitHub: https://github.com/dask/dask Website: https://www.dask.org - Cython: An optimizing static compiler. It makes writing C extensions as easy as Python itself. GitHub: https://github.com/cython/cython Website: https://cython.org - Numba: JIT compiler that translates a subset of Python and NumPy code into fast machine code. GitHub: https://github.com/numba/numba Website: https://numba.pydata.org - CuPy: Array Library compatible with NumPy and SciPy for GPU-accelerated Computing with Python GitHub: https://github.com/cupy/cupy Website: https://cupy.dev - pybind11: A C++ API for CPython/PyPy. GitHub: https://github.com/pybind/pybind11 Website: https://pybind11.readthedocs.io ### Visualization Scientific Python libraries for visualization - matplotlib: Library for creating static, animated, and interactive visualizations. GitHub: https://github.com/matplotlib/matplotlib Website: https://matplotlib.org - bokeh: A library for creating interactive visualizations for modern web browsers. GitHub: https://github.com/bokeh/bokeh Website: https://bokeh.org - napari: A multi-dimensional image viewer for Python. GitHub: https://github.com/napari/napari Website: https://napari.org/stable/ - holoviz: A set of high-level tools to simplify visualization in Python. GitHub: https://github.com/holoviz/holoviz Website: https://holoviz.org ### Support Scientific Python organizations that provide support to open source Python projects - NumFocus: Non-profit organization that promotes open practices in research, data, and scientific computing. GitHub: https://github.com/numfocus/numfocus Website: https://numfocus.orgs - SciPy: Annual Scientific Computing with Python conference. GitHub: https://github.com/scipy-conference Website: https://www.scipy2022.scipy.org - OpenTeams: A Network of Enterprise Solution Architects using open Source talent to build and maintain your softwaresolutions. GitHub: Website: https://www.openteams.coms - Scientific Python: A community effort to better coordinate the Scientific Python ecosystem and grow the community. GitHub: https://github.com/scientific-python/scientific-python.org Website: https://scientific-python.org ### IDE Scientific Python packages that contain developer tools. - IPython: A command-line interface to Python, for interactive computing with an interactive shell and a kernel for Jupyter. GitHub: https://github.com/ipython/ipython Website: https://ipython.orgj - Jupyter: A set of web services for interactive computing across all programming languages. GitHub: https://github.com/jupyter/jupyter Website: https://jupyter.org - Spyder: A Scientific Python Developement Environment. GitHub: https://github.com/spyder-ide/spyder Website: https://www.spyder-ide.org ### Mathematics Scientific Python libraries with math tools. - sympy: Library for symbolic mathematics. GitHub: https://github.com/sympy/sympy Website: https://www.sympy.org/en/index.html - scipy: Collection of fundamental algorithms for scientific computing in Python GitHub: https://github.com/scipy/scipy Website: https://scipy.org - mathjax: A JavaScript display engine for mathematics that works in all browsers. GitHub: https://github.com/mathjax/MathJax Website: https://www.mathjax.org ### Array and data format packages Scientific Python packages that make it easier to build and work in arrays. - numpy: Fundamental package for numerical computation. It defines the n-dimensional array data structure, the most common way of exchanging data within packages in the ecosystem. GitHub: https://github.com/numpy/numpy Website: https://numpy.orgz - zarr: A library and a format for chunked, compressed and N-dimensional arrays storage. GitHub: https://github.com/zarr-developers/zarr-python Website: https://zarr.dev/ - xarray: A package that makes working with labeled multi-dimensional arrays simple, efficient, and fun. GitHub: https://github.com/pydata/xarray Website: https://docs.xarray.dev/en/stable/n - Awkward Array: Manipulate JSON-like data with NumPy-like idioms. GitHub: https://github.com/scikit-hep/awkward Website: https://awkward-array.org ### Data representation and analysis - NetworkX: A package for the creation, manipulation, and study of complex networks. GitHub: https://github.com/networkx/networkx Website: https://networkx.org ### Machine and Deep Learning Scientific Python packages for machine and deep learning. - scikit-learn: A set of simple and efficient tools for predictive data analysis. GitHub: https://github.com/scikit-learn/scikit-learn Website: https://scikit-learn.org/stable/p - PyTorch Ignite: High-level library to help with training and evaluating neural networks in PyTorch flexibly and transparently. GitHub: https://github.com/pytorch/ignite Website: https://pytorch.org/ignite/index.html - Tensorflow: An Open Source Machine Learning Framework for Everyone Github: https://github.com/tensorflow/tensorflow Website: https://www.tensorflow.org/ ### Dataframes Scientific Python libraries for working with DataFrames. - Pandas: A package that provides fast, powerful, flexible, and easy to use data analysis and manipulation. GitHub: https://github.com/pandas-dev/pandas Website: https://pandas.pydata.org - GeoPandas: An open source project to make working with geospatial data in Python easier. GitHub: https://github.com/geopandas/geopandas Website: https://geopandas.org/en/stable/p - Pandera: A Statistical Data Testing Toolkit that provides a flexible API for performing data validation on dataframes. GitHub: https://github.com/pandera-dev/pytest-pandera Website: https://pandera.readthedocs.io/en/stable/ ### Testing Scientific Python tools for writing tests. - Pytest: A mature full-featured Python testing tool that helps you write better programs GitHub: https://github.com/pytest-dev/pytest Website: https://docs.pytest.org - Hypothesis: A library for creating unit tests which are simpler to write and more powerful GitHub: https://github.com/HypothesisWorks/hypothesis Website: https://hypothesis.readthedocs.io/en/latest/ - Ghostwriter: A command-line interface which can write property-based tests for you. GitHub: https://github.com/HypothesisWorks/hypothesis/tree/master/hypothesis-python/tests/ghostwriter Website: https://hypothesis.readthedocs.io/en/latest/ghostwriter.html ### Communities Communities around specific disiplines. - scikit-hep:A community project from High Energy Physics building tools useful in HEP and beyond. GitHub: https://github.com/scikit-hep Website: https://scikit-hep.org - pangeo: A community platform for Big Data geoscience GitHub: https://github.com/pangeo-data/pangeo Website: https://pangeo.io