Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save slumnitz/0db7f6a93b2d58ad5cc60bdf3ecd400b to your computer and use it in GitHub Desktop.
Save slumnitz/0db7f6a93b2d58ad5cc60bdf3ecd400b to your computer and use it in GitHub Desktop.
Overview of Python Packages for Scientific Computing

Overview of Python Packages for Scientific Computing

Resources

Courses

Course Description
Software Carpentry Introduction to various programming topics
Data carpentry Hands-on, interactive lessons on various data analysis topics
Intro to Data Analysis Free Udacity course on using NumPy and Pandas for data analysis
DataCamp, Dataquest Courses on various data science topics (not all are free)

Notebooks

Package Description
Jupyter Create and share documents that contain live code, equations, visualizations and explanatory text
nteract Embeds Jupyter notebooks as a desktop application

Data Wrangling

Package Description
pandas Offers table-like structure and some analysis tools

Plotting and Visualisation

Package Description
matplotlib The standard library for generating plots
seaborn High-level interface to matplotlib based on pandas
bokeh, Plotly Creates interactive visualisations for the web

Bioinformatics

Package Description
scikit-bio Bioinformatics algorithms in Python

Machine Learning

Package Description
scikit-learn The standard machine learning library
Orange Application for interactive data analysis
statsmodels Statistical models and tests

Deep Learning

Package Description
TensorFlow Neural network library from Google
Theano Another neural network library
Lasagne High-level interface to Theano

Networks and Graphs

Package Description
NetworkX Create, manipulate and anaylse networks and graphs
NetworKit Large-sale network analysis

Image Processing

Package Description
scikit-image Collection of algorithms for image processing
OpenCV Computational efficient library for computer vision with Python interface
Simple ITK Library for medical image processing

Natural Language Processing (NLP)

Package Description
SpaCy Library with lots of NLP algorithms
gensim Topic modelling

Bayesian Inference

Package Description
Stan Statistical modeling, data analysis, and prediction in the Bayesian world
PyMC3 Alternative package for Bayesian statistical modeling

Survival Analysis

Package Description
lifelines Survival analysis in Python
scikit-survival Survival analysis based on top of scikit-learn

Mathematics

Package Description
scipy statistics, linear algebra, numerical integration and optimisation
sympy Library for symbolic mathematics
cvxpy, cvxopt Convex optimisation
FEniCS Platform for partial differential equations (PDE)

Workflow

Package Description
Luigi Platform from Spotify to build complex pipelines
Airflow Another platform for managing workflows
Dask Parallel computing library
IPython Parallel Parallel processing built on top of IPython

Performance Improvement

Package Description
Cython Translates Python-style code to C
Numba Generates optimised code using a just-in-time compiler
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment