Getting started

Lorsqu’on fait des statistiques, le language Python est loin d’être aussi complet que R qui a été pensé dans ce but. Il faut lui ajouter plusieurs dizaines de modules. C’est à ce moment qu’on découvrir les subtilités dans les différents systèmes d’exploitations, les compilateurs, les dépendances, la ligne de commande. Ce paragraphe décrit un moyen d’installation Python sur les trois systèmes principaux Windows, OS X, Linux avec les modules nécessaires présentés dans ce cours. Le premier paragraphe explique comment installer rapidement Python, il faudra lire les suivants si vos besoins vont au delà.

En résumé : Anaconda

En résumé, le conseil le plus fréquent qu’on donne à ceux qui souhaitent installer Python est d’utiliser la distribution Anaconda. C’est l’équivalent de R. Sans autre étape supplémentaire, elle permet de faire du calcul matriciel numpy, de tracer des graphiques avec matplotlib, de manipuler les données pandas et de faire du machine du machine learning scikit-learn. La plupart des exercices proposés sur ce site n’utilisent pas plus que ce qui est proposé dans cette distribution standard. Pour les autres, les instructions mentionnées ci-dessous fonctionnent sous Windows, Linux et Mac.

  • Installation Anaconda (python 64 bit)
  • Mise à jour de la distribution avec conda update --all (en ligne de commande).

Pour installer le module implémenté pour ce cours :

  • pip install ensae_teaching_cs

Windows

Certains modules nécessitent une compilation C++. Anaconda fournit la plupart d’entre eux. Pour les autres, il faut allez à Unofficial Windows Binaries for Python Extension Packages. Certains modules n’existent pas sous forme précompilée à moins de le faire soi-même. Et c’est ce que j’ai fait pour certains modules comme dlib.

pip install pymyinstall
pymy_install xgboost

Linux en ligne de commande / MacOS

Voir Install Miniconda through SSH connection. Cela fonctionne avec les distributions Ubuntu 14.04 et Ubuntu 16.04. Vous pouvez par exemple suivre les instructions utilisées pour tester et compiler ce site disponibles dans le fichier config.yml. Les sorties disponibles sur le site CircleCI peuvent vous aider à comprendre les erreurs si vous en avez.

Les mêmes instructions devraient fonctionner sous MacOS depuis une fenêtre terminal car ce système s’appuie sur une distribution Linux.

IDE

Un IDE est un environnement de développement. Et comme on ne fait pas tout depuis un notebook, il faut en choisir un un.

Editeur de texte

Si vous êtes dans le train et que vous n’avez pas beaucoup de batterie, il faut revenir à l’essentiel : un éditeur de texte.

Installer un module

pip, python et ligne de commande

Le language python s’est doté d’un système de distribution de modules (ou packages) qui est aisément accessible depuis la ligne de commande. Sous Windows, on peut lancer la ligne de commande par la commande cmd. Sous Linux ou OS/X, c’est une fenêtre terminal (Linux, OS/X). Il suffit alors de se déplacer dans le répertoire d’installation de Python

cd c:\Python36_x64\Scripts

Ou encore :

cd c:\Anaconda3\Scripts

Puis d’écrire :

pip install <module>

Sous Linux ou OS X (Apple), la ligne de commande s’appelle le terminal. Comme Python est déjà installé en version 2.7, je recommande l’installation de la distribution Anaconda en version 3.6 qui facilite la coexistence de plusieurs versions de Python. On procède de la même manière

cd /home/<alias>/anaconda3/bin

Puis

pip install <module>

Pour vous assurer que cela correspond bien à la version de Python souhaitée, il suffit de demander la version installée

pip --version

Sous Windows, pour l’ajout d’un module ponctuel, si l’instruction pip install <module> ne fonctionne pas, c’est vraisemblablement parce que ce module contient une partie en C++. Dans ce cas, il faut aller voir sur ce site Unofficial Windows Binaries for Python Extension Packages s’il est disponible. S’il ne l’est pas, l’installation du module est réservée aux experts.

conda ou pip

Anaconda maintient des versions de librairies Python. Pour tous les modules de cette liste, Anaconda Package List, il faut utiliser conda install <module>. Pour les autres, pip install <module>. Cela ne fonctionne qu’avec la distribution Anaconda.

L’instruction pip install ne fonctionne pas sous Windows lorsque le module est implémenté en Python et C++. C’est pourquoi il est préférable d’installer une version précompilée.

Dépendances

Par défaut, l’installation d’un module implique celle de ses dépendances ce qu’il est possible d’éviter :

pip install <module> --no-deps

Installer un module avec pymy_install

Le module pymyinstall recherche la meilleure façon d’installer un module quelque soit votre installation. Pour l’installer ou le mettre à jour :

pip install pymyinstall --upgrade

L’installation du module crée deux scripts, pymy_install3 pour installer un module, pymy_update3 pour mettre à jour. Le module permet aussi d’installer un ensemble de modules. La ligne suivante installe un module développé pour ce cours et ses dépendances :

pymy_install3 --set=pyensae

Désinstallation des modules implémentés pour ce cours

Il est possible de désinstaller simplement les modules installés pour ces enseignements

pip uninstall -y actuariat_python
pip uninstall -y code_beatrix
pip uninstall -y cpyquickhelper
pip uninstall -y ensae_projects
pip uninstall -y ensae_teachings_cs
pip uninstall -y jupytalk
pip uninstall -y jyquickhelper
pip uninstall -y mlstatpy
pip uninstall -y pyensae
pip uninstall -y pymmails
pip uninstall -y pymyinstall
pip uninstall -y pyquickhelper
pip uninstall -y pyrsslocal
pip uninstall -y pysqllike
pip uninstall -y tkinterquickhelper
pip uninstall -y teachpyx

Configuration pour ces cours

Les notebooks utilisent le module pyensae développé pour ces enseignements. Pour installer ses dépendances, il faut utiliser le module pymyinstall. Les dépendances s’installent comme suit :

pymy_install3 –set=ensae_teaching_cs pip install ensae_teaching_cs

Certains notebooks requièrent des outils supplémentaires :

Distributions

  • Anaconda (Windows, Linux, Mac). Sous Linux ou Mac, la distribution n’interfère pas avec la distribution existante souvent différente. C’est un point très appréciable. Les modules de la distribution ne sont pas tous à jour. Il faut penser à mettre à jour avec la commande conda install <module> depuis le répertoire Anaconda3/Scripts (conda install cvxopt par exemple). Il existe une version différente : miniconda. La liste des packages manquant sera probablement différente. Il suffit d’écrire sur la ligne de commande conda update --all pour mettre à jour tous les modules.
  • WinPython (Windows). Sous Windows, elle inclut parfois R ou Julia (ces version ne sont pas aussi à jour que la version principale). On passe alors facilement de python à R ou Julia depuis le même notebooks. Uniquement disponible sous Windows, cette installation a l’avantage de ne pas nécessiter les droits administrateur pour être installée. Elle ne modifie pas les registres et on peut la recopier telle quelle sur une clé USB pour la recopier sur un autre ordinateur. On peut également préparer sa propre version How To Make WinPython.
  • Distribution officielle de Python, il faut ensuite installer de nombreux modules (voir Liste exhaustive de modules Python) pour obtenir une distribution équivalente aux deux précédentes.
  • miniconda est une version light de Anaconda sans tous ces packages. Elle peut être installée depuis une ligne de commande, via une connexion SSH. Voir Install Anaconda through SSH connection.

La liste des packages de WinPython ou Anaconda sont d’excellents moyens de découvrir de nouveaux modules intéressants.

Modules incournables pour un data scientist

Les modules indispensables sont intégrés à la distribution Anaconda, WinPython.

Les indispensables

  • dask : dataframe distribué et capables de gérer des gros volumes de données (> 5Go)
  • Jupyter : gestion des notebooks (des pages blanches mélangeant code, équations, graphiques)
  • matplotlib : graphes scientifiques
  • numpy : calcul matriciel
  • pandas : gestion de DataFrame
  • Scipy : calcul scientifiques
  • scikit-learn : machine learning, statistique descriptive
  • statsmodels : séries temporelles

Visualisation

Voir 10 plotting libraries at PyData 06/14/2016 in Paris.

Jeux

  • pygame
  • kivy : pour faire des jeux ou des applications pour tablettes, téléphones

Pour les TD et projets à l’ENSAE

Pour faire du machine learning sans programmer

Outils, ressources pour développer

Développer un programme informatique prend du temps et il est important d’être à l’aise. Une grande difficulté lorsqu’on programme c’est de travailler à plusieurs sur le même projet. Il faut se sychroniser. Fort heureusement, le problème est connu depuis longtemps et il existe beaucoup d’outils open source dont on aurait tort de se passer ou des services gratuits sous certains conditions qui facilitent l’archivage.

En vrac

Suivi de sources distant

Git

git est un logiciel de suivi de source. Il a supplanté tous les autres et il est indispensable aujourd’hui de le connaître. On ne retient pas toujours les commandes mais un moteur de recherche fournit rapidement la réponse. Voir aussi Cheat Sheet.

Archivage distant

  • hubiC (25 Go gratuit - août 2015)
  • OneDrive (15 Go gratuit - août 2015)

Ce ne sont pas les seuls, vous trouverez d’autres options ici : cloud-gratuit. Toutefois, il est recommandé de faire attention avec les données personnelles sensibles. Il n’est pas toujours possible de choisir le lieu de stockage et chaque pays a une législation différente. Même si vos données sont protégées par un mot de passe et ne sont pas publiques, il arrive que certains mots de passe soient interceptés.

Comparaison de fichiers

Partager des notes, des idées

Editeur de texte

  • SciTE : le plus simple, pas d’explorateur de fichier, pas d’installeur, autocomplétion perturbante
  • TextWrangler (seulement sur iOS - Apple)
  • SublimeText : configuration nécessaire avant d’exécuter un script python
  • NotePad++ : configuration nécessaire avant d’exécuter un script python

IDE

Python et Domotique

Navigateur

Les navigateur sont importants pour l’utilisation des notebooks. Je recommande soit Firefox, soit Chrome. Ces deux navigateurs sont indispensables si vous insérez du javascript dans nos notebooks. Le débuggeur de Chrome est le plus pratique à utiliser quand il s’agit d’aller fouiller dans les feuilles de styles ou de voir l’exécution du javascript.

Documentation

La documentation et les tests unitaires les modules classés dans les catégories SPHINX, TEACH (voir table ci-dessous). Certaines séances pratiques utilisent des données depuis ce site. Elles sont facilement téléchargeables avec ces deux modules :

  • pyquickhelper : ce module compile ce cours
  • pyensae : outils variés pour les élèves de l’ENSAE
  • pymyinstall : installer facilement des modules sous Windows

Pour être compilée, la documentation requiert également :

Continuous build

Compression

  • 7zip : pour compresser, décompresser tous les formats

Ressources

Setup pour déveloper ce cours (Windows)

Pour chaque version de Python, il faut installer pymyinstall puis écrire pymy_install puis supprimer les modules qu’on souhaite compiler et tester (voir Désinstallation des modules implémentés pour ce cours).

Quelques modules particuliers : plus trop maintenus mais parfois utiles et parfois modifiés

pip install https://github.com/sdpython/pyPdf/archive/trunk.zip

En plus :

Pour Jenkins, quelques extensions :

Pour Jupyter :

pip install widgetsnbextension
jupyter nbextension enable --py --sys-prefix widgetsnbextension

Un serveur en local doit être démarré, la ligne de commande ressemble à ceci :

c:\Python36_x64\Scripts\pypi-server.exe -u -p 8067 --disable-fallback ..\..\local_pypi\local_pypi_server

Si le serveur Jenkins utilise des mots-clés via keyring, ce qui est le cas pour plusieurs modules utilisés pour ces enseignements, il est nécessaire de créer un serveur un serveur Jenkins authntifié. Sous Windows, il faut chercher services.msc et renseigner les identifiants. Pour certains projets (comme la compilation de pywin32), il faut installer Windows SDK.

Maintenir sa distribution Python à jour

Manipuler les données est différent de savoir programmer. Si le second est nécessaire au premier, il est impensable aujourd’hui de ne pas tenir compte ce que d’autres programmeurs ont mis à disposition de tous en libre accès. Tous les modules proposés dans la suite sont utilisées par beaucoup, et sont très adaptés à la manipulation des données. Ils bénéficient de ce fait d’un développement rapide et d’une robustesse qu’il faut environ un an à un bon programmeur pour obtenir avec un de ses outils sur le même éventail de fonctionnalités (en y consacrant 10 à 20% de son temps).

J’ai cherché à regrouper les outils qui permettent à un ingénieur, statisticiens, data scientist de manipuler aisément des données, qui peuvent aller de quelques kilo-octets à quelques giga octets. En tant que data scientist, je pioche très régulièrement des éléments des sept premiers chapitres. Les sept suivants ne sont utiles que de temps en temps, surtout si les données sont de taille supérieure à 250 Mo.

L’essentiel n’est pas de tout faire en Python, l’essentiel est d’être agile, de passer le moins de temps sur l’implémentation et le plus de temps possible sur les données.

Listes de modules

Quelques articles

Liens, blogs à suivre

Articles Livres, Vidéos

Liste exhaustive de modules Python

Les modules suivant font partie du setup proposé aux étudiants (voir plus bas).

  • usage : classification, la plus importante DATA/ML regroupe les modules les plus importantes pour faire du machine learning
  • name : nom du module
  • kind : façon d’installer le module sous Windows, si c’est wheel, cela signifie que le module inclut une partie C++ qu’il est préférable de récupérer déjà compilée via le site Unofficial Windows Binaries for Python Extension Packages.
  • version : la version à installer car d’autres peuvent provoquer des conflits
  • license : license du module, toutes ne permettent pas un usage commercial, voir choose a license, licences commentées
  • purpose : description plus détaillée

>>>

from ensae_teaching_cs.automation import rst_table_modules
print(rst_table_modules())

Sortie

index usage name kind version license purpose
0   abcpmc pip   GPLv3 Monte Carlo and ABC methods
1 TEACH actuariat_python pip   MIT teachings, insurance examples
2 ML ad3 wheel   GPLv3 AD3 (approximate MAP decoder with Alternating Direction Dual Decomposition)
3   adal pip   MIT The ADAL for Python library makes it easy for python application to authenticate to Azure Active Directory (AAD) in order to access AAD protected web resources.
4   aenum pip   BSD License Advanced Enumerations (compatible with Python’s stdlib Enum), NamedTuples, and NamedConstants
5 SPHINX alabaster pip   BSD A configurable sidebar-enabled Sphinx theme
6   alembic pip   MIT A database migration tool for SQLAlchemy.
7 OPTIM algopy pip   BSD ALGOPY: Taylor Arithmetic Computation and Algorithmic Differentiation
8   amqp pip   BSD Low-level AMQP client for Python (fork of amqplib) (for celery)
9   ansi2html pip   GPLv3+ Convert text with ANSI color codes to HTML
10   ansiconv pip   MIT A Python module for converting ANSI coded text and converts it to either plain text or HTML.
11   antlr4-python3-runtime pip   BSD antlr4 runtime, grammar parser
12   anyjson pip   BSD Wraps the best available JSON implementation available in a common interface (for celery)
13   AnyQt pip   GPLv3 PyQt4/PyQt5 compatibility layer.
14   apache-libcloud pip   Apache License (2.0) A standard Python library that abstracts away differences among multiple cloud provider APIs.
15   appdirs pip   MIT A small Python module for determining appropriate platform-specific dirs
16   apscheduler pip   MIT to schedule the execution of jobs, tasks
17   arrow pip   Apache 2.0 Better dates and times for Python
18   asn1crypto pip   MIT Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, PKCS#5, X.509 and TSP
19   astroid pip   LGPL A abstract syntax tree for Python with inference support.
20   astropy wheel   BSD Community-developed python astronomy tools
21   attrs pip   MIT Attributes without boilerplate.
22   Automat pip   MIT Self-service finite-state machines for the programmer on the go.
23 STYLE autopep8 pip   Expat License apply pep8 on a script
24   autopy3 wheel   MIT A simple, cross-platform GUI automation toolkit for Python 3 (issue on Linux and Anaconda)
25 AZURE azure pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
26 AZURE azure-batch pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
27 AZURE azure-common pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
28 AZURE azure-datalake-store pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
29 AZURE azure-graphrbac pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
30 AZURE azure-keyvault pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
31 AZURE azure-mgmt pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
32 AZURE azure-mgmt-authorization pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
33 AZURE azure-mgmt-batch pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
34 AZURE azure-mgmt-cdn pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
35 AZURE azure-mgmt-cognitiveservices pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
36 AZURE azure-mgmt-commerce pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
37 AZURE azure-mgmt-common pip   Apache License 2.0 Python wrapper for Azure API (HDInsight, Blog Storage)
38 AZURE azure-mgmt-compute pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
39 AZURE azure-mgmt-containerregistry pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
40 AZURE azure-mgmt-datalake-analytics pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
41 AZURE azure-mgmt-datalake-nspkg pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
42 AZURE azure-mgmt-datalake-store pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
43 AZURE azure-mgmt-devtestlabs pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
44 AZURE azure-mgmt-dns pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
45 AZURE azure-mgmt-documentdb pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
46 AZURE azure-mgmt-iothub pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
47 AZURE azure-mgmt-keyvault pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
48 AZURE azure-mgmt-logic pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
49 AZURE azure-mgmt-monitor pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
50 AZURE azure-mgmt-network pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
51 AZURE azure-mgmt-notificationhubs pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
52 AZURE azure-mgmt-nspkg pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
53 AZURE azure-mgmt-powerbiembedded pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
54 AZURE azure-mgmt-rdbms pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
55 AZURE azure-mgmt-redis pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
56 AZURE azure-mgmt-resource pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
57 AZURE azure-mgmt-scheduler pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
58 AZURE azure-mgmt-sql pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
59 AZURE azure-mgmt-storage pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
60 AZURE azure-mgmt-trafficmanager pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
61 AZURE azure-mgmt-web pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
62 AZURE azure-nspkg pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
63 AZURE azure-servicebus pip   Apache License 2.0 Python wrapper for Azure API (HDInsight, Blog Storage)
64 AZURE azure-servicefabric pip   MIT License Python wrapper for Azure API (HDInsight, Blog Storage)
65 AZURE azure-servicemanagement-legacy pip   Apache License 2.0 Python wrapper for Azure API (HDInsight, Blog Storage)
66 AZURE azure-storage pip   Apache License 2.0 Python wrapper for Azure API (HDInsight, Blog Storage)
67   azureml pip   MIT Microsoft Azure Machine Learning Python client library
68 SPHINX babel pip   BSD Internationalization utilities, version 2.0 has bugs
69   backports.functools_lru_cache pip   MIT backports.functools_lru_cache
70   backports.lzma wheel   3-clause BSD License Backport of Python 3.3’s “lzma” module for XZ/LZMA compressed files.
71 JUPYTER backports.shutil-get-terminal-size pip   MIT needed for Jupyter
72   backports.wearkef pip     This package provides backports of new features in Python’s weakref module under the backports namespace. (for tensorflow)
73 JUPYTER backports_abc pip   Python Software Foundation License A backport of recent additions to the “collections.abc” module
74 VIZ basemap wheel   OSI Approved maps extension for matplotlib
75 DATA/ML bayespy pip     bayesian modelling and computation
76 DATA/ML bcolz wheel   BSD compressed dataframe, in memory or on disk
77   bcrypt pip   Apache License 2.0 Modern password hashing for your software and your servers
78   beautifulsoup4 pip   MIT Beautiful Soup sits atop an HTML or XML parser, providing Pythonic idioms for iterating, searching, and modifying the parse tree.
79   bigfloat wheel   GNU Library or Lesser General Public License (LGPL) big float (issue with Linux and Anaconda)
80   billiard pip   BSD Python multiprocessing fork with improvements and bugfixes (for celery)
81 BIO biopython wheel   ~MIT The Biopython Project is an international association of developers of freely available Python tools for computational molecular biology.
82   bitarray wheel   PSF efficient arrays of booleans – C extension
83 VIZ bkcharts pip     High level chart types built on top of Bokeh
84 DATA/ML blaze pip   BSD separate expression from computation (works with iterators), used with odo, avoids doing everything in memory, handle better large datasets, check issue https://github.com/cmderdev/cmder/issues/490 for missing api-ms-win-crt-runtime-l1-1-0.dll
85 WEB bleach github   Apache Software License An easy whitelist-based HTML-sanitizing tool.
86   blist wheel   BSD a list-like type with better asymptotic performance and similar performance on small lists
87   blockdiag pip   Apache License 2.0 blockdiag generates block-diagram image from text
88   blocks github   MIT Blocks is a framework that helps you build neural network models on top of Theano.
89   blosc wheel   http://www.opensource.org/licenses/mit-license.php Blosc (http://blosc.org) is a high performance compressor optimized for binary data.
90   blz wheel   http://www.opensource.org/licenses/bsd-license.php blz: a compressed data container
91 VIZ bokeh pip   New BSD interactive graphs, zoomable, javascript
92   boto pip   MIT Amazon Web Services Library
93 AWS boto3 pip   Apache License 2.0 A Python interface to Amazon Web Services
94 AWS botocore pip   Apache License 2.0 A low-level interface to a growing number of Amazon Web Services. The botocore package is the foundation for the AWS CLI as well as boto3.
95 ORANGE Bottlechest wheel2   Simplified BSD Bottlechest is a fork of bottleneck specialized for use in Orange
96   Bottleneck wheel   Simplified BSD Fast NumPy array functions written in Cython, needed by la
97 VIZ bqplot pip   Apache interactive graphs, zoomable, d3.js for notebooks
98 VIZ branca pip   Copyright (C) 2013, Martin Journois  
99   brewer2mpl pip   MIT Connect colorbrewer2.org color maps to Python and matplotlib
100   brythonmagic pip   MIT Magics to use brython in Jupyter notebook.
101 ALGO BTrees wheel   ZPL 2.1 This package contains a set of persistent object containers built around a modified BTree data structure.
102   bz2file pip   Apache License, Version 2.0 process bz2 files
103   CacheControl pip   Apache Software License httplib2 caching for requests
104   cached_property pip   BSD A decorator for caching properties in classes (for luigi)
105   cachetools pip   MIT Extensible memoizing collections and decorators
106 VIZ Cartopy wheel   LGPLv3 Cartopy is a Python package designed to make drawing maps for data analysis and visualisation as easy as possible (issue on Linux and Anaconda)
107 ML category_encoders pip   BSD A set of scikit-learn-style transformers for encoding categorical variables into numeric by means of different techniques.
108   celery pip   BSD Celery is an asynchronous task queue/job queue based on distributed message passing.
109   certifi pip   MPL-2.0 Certifi is a carefully curated collection of Root Certificates for validating the trustworthiness of SSL certificates while verifying the identity of TLS hosts.
110   cffi wheel   MIT Foreign Function Interface for Python calling C code.
111 DATA/DML chainer wheel     A flexible framework of neural networks (GPU)
112   chalmers pip   MIT Chalmers is an application that allows its users to monitor and control a number of processes on any operating system (Posix and Win32 included)
113 WEB chardet pip   LGPL Universal encoding detector.
114   cheroot pip     Highly-optimized, pure-python HTTP server
115   CherryPy pip   BSD create web application, needed by Spyre
116   chest pip   BSD Simple on-disk dictionary
117   citeproc-py pip   2-clause BSD License citeproc-py is a CSL processor for Python. It aims to implement the CSL 1.0.1 specification. citeproc-py can output styled citations and bibliographies in a number of different output formats. Currently supported are plain text, reStructuredText and HTML. Other formats can be added easily.
118   click pip     A simple wrapper around optparse for powerful command line utilities.
119   click-plugins pip   New BSD An extension module for click to enable registering CLI commands via setuptools entry-points.
120   cligj pip   BSD Click params for commmand line interfaces to GeoJSON
121   climate pip     Command-line utilities (turn function into command line)
122 SPHINX cloud_sptheme pip   BSD sphinx theme
123   cloudpickle pip   LICENSE.txt Extended pickling support for Python objects
124   clyent pip   BSD Command line client Library for windows and posix
125 DATA/ML cntk wheel     Deep Learning from Microsoft see https://docs.microsoft.com/en-us/cognitive-toolkit/setup-windows-python
126   cobble pip   BSD Cobble is a Python library that allows easy creation of data objects, including implementations of common methods such as __eq__ and __repr__.
127 TEACH code_beatrix pip   MIT teaching programming to kids, lesenfantscodaient.fr
128   codecov pip   http://www.apache.org/licenses/LICENSE-2.0 submit coverage report to codecov
129   colander pip     A simple schema-based serialization and deserialization library
130 SPHINX colorama pip   BSD Cross-platform colored terminal text.
131   colorcet pip   Creative Commons Attribution 4.0 International Public License (CC-BY) colorcet is a collection of perceptually uniform colormaps for use with Python plotting programs like bokeh, matplotlib, holoviews, and datashader.
132 VIZ colorlover pip   MIT Color scales for IPython notebook
133 VIZ colormap pip   LGPL Utilities to ease manipulation of matplotlib colormaps and color codecs (e.g., hex2rgb)
134   colormath pip   BSD Color math and conversion library.
135   colorspacious pip   MIT A powerful, accurate, and easy-to-use Python library for doing colorspace conversions (for viscm)
136   CommonMark pip   BSD-3-Clause Python parser for the CommonMark Markdown spec
137   comtypes pip   MIT License Pure Python COM package
138   constantly pip   MIT Symbolic constants in Python
139   contextlib2 pip   PSF License Backports and enhancements for the contextlib module
140   coverage pip   Apache 2.0 measure the coverage of unit tests
141   cryptography pip   BSD or Apache License, Version 2.0 cryptography is a package which provides cryptographic recipes and primitives to Python developers.
142   cssselect pip   BSD cssselect parses CSS3 Selectors and translates them to XPath 1.0
143   cubes pip   MIT license with following addition: If your version of the Software supports interaction with it remotely through a computer network, the above copyright notice and this permission notice shall be accessible to all users. Cubes is a light-weight Python framework and set of tools for development of reporting and analytical applications, Online Analytical Processing (OLAP), multidimensional analysis and browsing of aggregated data. It is part of Data Brewery.
144   cuda4py pip   Simplified BSD Python cffi CUDA bindings and helper classes
145 VIZ cufflinks pip   MIT Productivity Tools for Plotly + Pandas
146 OPTIM CVXcanon wheel   GPLv3 A low-level library to perform the matrix building step in cvxpy, a convex optimization modeling software.
147 OPTIM cvxopt wheel   GNU GPL version 3 linear, quadratique optimization
148 OPTIM cvxpy pip   Apache v2.0 linear, quadratic optimization, depends on cvxopt
149 VIZ cycler pip   BSD dependency for matplotlib
150   cymem pip   MIT Manage calls to calloc/free through Cython
151   cyordereddict wheel   MIT Cython implementation of Python’s collections.OrderedDict
152   Cython wheel   Apache pseudo C++ in python
153 DATA/ML cytoolz wheel   BSD Cython implementation of Toolz: High performance functional utilities
154 DATA/ML dask pip   BSD parallization of operations with dataframe
155   DataProperty pip     Python library for extract property from data.
156 VIZ datashader github   BSD Datashader is a graphics pipeline system for creating meaningful representations of large amounts of data.
157   datashape pip   BSD A data description language.
158 VIZ dataspyre pip   MIT create simple web application to visualize data
159 ALGO datrie wheel   LGPLv2+ Fast, efficiently stored Trie for Python.
160   db.py pip   BSD db.py is an easier way to interact with your databases. It makes it easier to explore tables, columns, views, etc. It puts the emphasis on user interaction, information display, and providing easy to use helper functions.
161   dbf pip   BSD License access DBase format
162   dbfread pip   MIT access DBase format
163   deap pip   LGPL deep learning
164   decorator pip   new BSD License Better living through Python with decorators
165   defusedxml pip   Python Software Foundation License Version 2 XML bomb protection for Python stdlib modules
166   dev pip   Public Domain Header files, a static library and development tools for building Python modules, extending the Python interpreter or embedding Python in applications.
167   dill pip   3-clause BSD serialize all of python (almost), Dill extends python’s pickle module for serializing and de-serializing python objects to the majority of the built-in python types.
168   django pip   BSD Django
169   django-audiotracks pip   MIT read audio with django
170   django-celery pip   BSD localshop dependency, Old django celery integration project.
171   django-configurations pip   BSD localshop dependency, A helper for organizing Django settings.
172 WEB django-contrib-comments pip   BSD Django used to include a comments framework; since Django 1.6 it’s been separated to a separate project. This is that project.
173   django-environ pip   MIT License localshop dependency, Django-environ allows you to utilize 12factor inspired environment variables to configure your Django application.
174   django-guardian pip   BSD localshop dependency, Implementation of per object permissions for Django 1.2 or later.
175   django-model-utils pip   BSD localshop dependency, Django model mixins and utilities.
176   django-storages pip   BSD localshop dependency, django-storages is a collection of custom storage backends for Django.
177   django-userena pip   BSD localshop dependency, Accounts for Django made beautifully simple
178   django-uuidfield pip   ~BSD localshop dependency, UUIDField in Django
179 ML dlib wheel   boost A toolkit for making real world machine learning and data analysis applications
180 WEB dnspython pip   BSD-like dnspython is a DNS toolkit for Python. It supports almost all record types. It can be used for queries, zone transfers, and dynamic updates. It supports TSIG authenticated messages and EDNS0.
181 STYLE docformatter pip   Expat License Formats docstrings to follow PEP 257.
182   docopt pip   MIT Pythonic argument parser, that will make you smile
183 SPHINX docrepr pip   BSD docrepr renders Python docstrings in HTML
184 SPHINX docutils pip   public domain, Python, 2-Clause BSD, GPL 3 (see COPYING.txt) interpret RST format
185   docx2txt pip   MIT A pure python-based utility to extract text and images from docx files.
186   dominate pip   GNU Lesser General Public License (LGPL) Dominate is a Python library for creating and manipulating HTML documents using an elegant DOM API.
187 ML downhill pip     Stochastic optimization routines for Theano
188 VIZ drawtree pip   Apache License 2.0 Draw binary tree in plain text
189   duecredit pip   2-clause BSD License Publications (and donations) tracer
190   dynd wheel   BSD DyND-Python, a component of the Blaze project, is the Python exposure of the DyND dynamic multi-dimensional array library.
191   easy-thumbnails pip   BSD Easy thumbnails for Django
192   easydev pip   new BSD Common utilities to ease the development of Python packages
193   ecdsa pip   MIT ECDSA cryptographic signature library (pure python)
194 OPTIM ecos wheel   GPLv3 ECOS is a numerical software for solving convex second-order cone programs (SOCPs)
195 DATA/ML edward pip   MIT Edward is a Python library for probabilistic modeling, inference, and criticism
196   elasticsearch pip   Apache License 2.0 Python client for Elasticsearch
197   empyrical pip   Apache License, Version 2.0 empyrical is a Python library with performance and risk statistics commonly used in quantitative finance
198 TEACH ensae_projects pip   MIT single use code
199 TEACH ensae_teaching_cs pip   MIT teachings, introduction to programming, machine learning, map/reduce
200 JUPYTER entrypoints pip   MIT Discover and load entry points from installed packages.
201   envoy pip   MIT Simple API for running external processes.
202   et_xmlfile pip   MIT et_xmlfile is a low memory library for creating large XML files (for openpyxl).
203 VIZ ete3 pip   GPLv3 tree visualisation
204   expressions pip   MIT license Arithmetic expression parser library. Embed customized expression evaluation into your application or library.
205   fabric pip   BSD Fabric is a Python library and command-line tool for streamlining the use of SSH for application deployment or systems administration tasks.
206   Fabric3 pip   BSD Fabric is a simple, Pythonic tool for remote execution and deployment (py2.7/py3.4+ compatible fork)
207 NETWORK falcon pip   Apache 2.0 Falcon is a very fast, very minimal Python web framework for building microservices, app backends, and higher-level frameworks.
208 ML fancyimpute pip     Matrix completion and feature imputation algorithms
209   fastcache wheel   MIT C implementation of Python 3 lru_cache for Python.
210 DATA/ML fastcluster wheel   BSD <http://opensource.org/licenses/BSD-2-Clause> clustering, AHC, … (issue on Linux and Anaconda)
211   fasteners pip   ASL 2.0 A python package that provides useful locks.
212   fastparquet wheel   Apache License 2.0 fastparquet is a python implementation of the parquet format, aiming integrate into python-based big data work-flows.
213 DATA/ML fasttext wheel   BSD 3-Clause License fastText is a library for efficient learning of word representations and sentence classification.
214   fbpca pip   BSD License Functions for principal component analysis (PCA) and accuracy checks.
215 DATA/ML fbprophet pip   BSD Prophet is a procedure for forecasting time series data. It is based on an additive model where non-linear trends are fit with yearly and weekly seasonality, plus holidays. It works best with daily periodicity data with at least one year of historical data. Prophet is robust to missing data, shifts in the trend, and large outliers.
216   feedparser pip   ~BSD - 2 clauses parse RSS streams
217 WEB filebrowser_safe pip   ~MIT A snapshot of the filebrowser_3 branch of django-filebrowser, packaged as a dependency for the Mezzanine CMS for Django.
218   filelock pip   Unlicensed A platform independent file lock.
219 GEO Fiona wheel   BSD Fiona is OGR’s neat, nimble, no-nonsense API for Python programmers.
220 STYLE flake8 pip   MIT verify pep8 on a script
221 NETWORK flask pip   BSD Flask is a microframework for Python based on Werkzeug, Jinja 2 and good intentions. And before you ask: It’s BSD licensed!
222   Flask-Cors pip   MIT A Flask extension for handling Cross Origin Resource Sharing (CORS), making cross-origin AJAX possible.
223 NETWORK Flask-Login pip   MIT  
224 NETWORK flask-sqlalchemy pip   BSD  
225 GUI flexx pip   (new) BSD Flexx is a pure Python toolkit for creating graphical user interfaces (GUI’s), that uses web technology for its rendering. Apps are written purely in Python; Flexx” transpiler generates the necessary JavaScript on the fly.
226 VIZ folium pip   Copyright (C) 2013, Rob Story This library is a spinoff from folium, that would host the non-map-specific features. It may become a HTML+JS generation library in the future.
227 ML foolbox pip     Foolbox is a Python toolbox to create adversarial examples that fool neural networks.
228 ML forestci pip   MIT Python module for calculating variance and adding confidence intervals to scikit-learn random forest regression or classification objects. The core functions calculate an in-bag and error bars for random forest objects
229 SPHINX foundation-sphinx-theme pip   MIT sphinx theme
230   ftfy pip   MIT Fixes some problems with Unicode text after the fact
231 DATA/VIZ fuel pip   MIT Fuel is a data pipeline framework which provides your machine learning models with the data they need.
232   funcparserlib pip   MIT Recursive descent parsing library based on functional combinators
233   funcsigs pip   ASL Python function signatures from PEP362
234   future pip   MIT Clean single-source support for Python 3 and 2
235   fuzzywuzzy pip     Fuzzy string matching in python
236   gatspy pip   BSD 3-clause General tools for Astronomical Time Series in Python
237   GDAL wheel   MIT GDAL is a translator library for raster and vector geospatial data formats that is released under an X/MIT style Open Source license by the Open Source Geospatial Foundation.
238 GOOGLE gdata pip   Apache 2.0 Python client library for Google data APIs
239 ML gdbn pip   MIT (see license.txt) This package contains python code for pre-trained deep neural networks
240   gensim wheel   LGPLv2+ genetic algorithm
241 VIZ geoplotlib pip   MIT geoplotlib is a python toolbox for visualizing geographical data and making maps
242 VIZ geopy pip   MIT Python Geocoding Toolbox
243   gevent pip   MIT gevent is a coroutine-based Python networking library
244   ggplot pip   BSD ggplot graphics style
245 JUPYTER ghost.py pip   mit ghost.py is a webkit web client written in python
246   git-pandas pip   BSD  
247   gitdb2 pip   BSD License GitDB is a pure-Python git object database
248   GitPython pip   BSD License Python Git Library
249   glue-core pip   BSD Multidimensional data visualzation across files
250   glue-vispy-viewers pip   As Is Vispy-based viewers for Glue
251 DATA/ML glueviz pip   BSD ploting, Multidimensional data visualzation across files
252   gmpy2 wheel   LGPLv3+ big real numbers (issue on Linux and Anaconda)
253   gnumpy pip   BSD-derived (see LICENSE.txt) Gnumpy: an easy way to use GPU boards in Python
254   google-api-python-client pip   Apache 2.0 The Google API Client for Python is a client library for accessing the Plus, Moderator, and many other Google APIs.
255   googlemaps pip   Apache 2.0 Python client library for Google Maps API Web Services
256 ML gplearn pip   new BSD gplearn implements Genetic Programming in Python, with a scikit-learn inspired and compatible API.
257 PROFILING gprof2dot pip   LGPL This is a Python script to convert the output from many profilers into a dot graph.
258   grab pip   MIT License Grab is a python web scraping framework. Grab provides tons of helpful methods to scrape web sites
259   grako wheel   BSD License Grako (for grammar compiler) is a tool that takes grammars in a variation of EBNF as input, and outputs memoizing (Packrat) PEG parsers in Python.
260 VIZ graphviz pip   MIT wrapper for graphviz (most famous tool to draw graphs
261 WEB grappelli_safe pip   ~MIT A snapshot of the grappelli_2 branch of django-grappelli, packaged as a dependency for the Mezzanine CMS for Django.
262   greenlet wheel   MIT License Greenlet allows lightweight in-process concurrent programming.
263   grequests pip   BSD GRequests allows you to use Requests with Gevent to make asynchronous HTTP Requests easily.
264 CLI grin pip   BSD A grep program configured the way I like it.
265   guidata wheel2   CeCILL v2 Automatic graphical user interfaces generation for easy dataset editing and display
266   guiqwt wheel   CeCILL V2 Efficient 2D plotting Python library based on PythonQwt (Spyder)
267   gunicorn pip   MIT localshop dependency, WSGI HTTP Server for UNIX
268 SPHINX guzzle_sphinx_theme pip   BSD~MIT sphinx theme
269   gvar wheel   GPLv3+ Utilities for manipulating correlated Gaussian random variables.
270   h2 pip   MIT HTTP/2 State-Machine based protocol implementation
271 ML h2o pip   Apache v2 H2O, Fast Scalable Machine Learning, for python
272 DATA/ML h5py wheel   BSD The h5py package is a Pythonic interface to the HDF5 binary data format. Trillion-Particle Simulation.
273 SPHINX hachibee-sphinx-theme pip   MIT sphinx theme
274 ML HDDM wheel   BSD HDDM is a python module that implements Hierarchical Bayesian estimation of Drift Diffusion Models.
275   heapdict pip   BSD a heap with decrease-key and increase-key operations
276 VIZ heatmap wheel   MIT License draw heatmap
277 ML hmmlearn wheel   new BSD Hidden Markov Models in Python, with scikit-learn like API
278   HoloPy wheel     Hologram processing and light scattering in python
279 VIZ holoviews pip   BSD Composable, declarative data structures for building complex visualizations easily.
280   hpack pip   MIT Pure-Python HPACK header compression
281   html2text pip   GNU GPL 3 Turn HTML into equivalent Markdown-structured text.
282   html5lib pip   MIT License pure-python library for parsing HTML
283   httpie pip   BSD HTTPie - a CLI, cURL-like tool for humans
284   httplib2 pip   MIT A comprehensive HTTP client library.
285   httpretty pip   MIT HTTP client mock for Python
286   husl pip   MIT Python implementation of HUSL
287   hyper pip   MIT HTTP/2 Client for Python
288   hyperframe pip   MIT HTTP/2 framing layer for Python
289   hyperlink pip   MIT A featureful, correct URL for Python.
290 ML hyperopt github   BSD Hyperopt is a Python library for serial and parallel optimization over awkwardsearch spaces, which may include real-valued, discrete, and conditional dimensions.
291   hyperspy wheel   GNU General Public License v3 (GPLv3) HyperSpy is an open source Python library which provides tools to facilitate the interactive data analysis of multi-dimensional datasets that can be described as multi-dimensional arrays of a given signal (e.g. a 2D array of spectra a.k.a spectrum image).
292   hypothesis pip   MPL v2 Hypothesis is an advanced testing library for Python. It lets you write tests which are parametrized by a source of examples, and then generates simple and comprehensible examples that make your tests fail. This lets you find more bugs in your code with less work.
293 WEB idna pip   BSD-like Internationalized Domain Names in Applications (IDNA)
294 VIDEO imageio pip   (new) BSD Library for reading and writing a wide range of image, video, scientific, and volumetric data formats (for moviepy)
295   images2gif pip   Unlicensed Create a GIF from a list of images.
296 SPHINX imagesize pip   MIT Getting image size from png/jpeg/jpeg2000/gif file
297 ML imbalanced-learn pip   MIT imbalanced-learn is a python package offering a number of re-sampling techniques commonly used in datasets showing strong between-class imbalance. It is compatible with scikit-learn and is part of scikit-learn-contrib projects.
298   imbox pip   MIT Python library for reading IMAP mailboxes and converting email content to machine readable data
299   incremental pip   MIT Incremental is a small library that versions your Python projects.
300   inflection pip   MIT A port of Ruby on Rails inflector to Python
301   intervaltree pip   Apache License, Version 2.0 Editable interval tree data structure for Python 2 and 3
302   invoke pip   BSD Invoke is a Python task execution tool & library, drawing inspiration from various sources to arrive at a powerful & clean feature set.
303   ipaddress pip   Python Software Foundation License IPv4/IPv6 manipulation library
304 JUPYTER ipykernel pip   BSD IPython, Jupyter, kernels
305 JUPYTER ipyparallel pip   BSD Interactive Parallel Computing with IPython
306 JUPYTER ipython pip   BSD IPython, Jupyter
307 JUPYTER ipython_genutils pip   BSD IPython utils (nbformat)
308 JUPYTER ipywidgets pip   BSD IPython, Jupyter, widgets
309   iso8601 pip     Simple module to parse ISO 8601 dates
310   isodate pip   BSD An ISO 8601 date/time/duration parser and formatter
311   isort pip   MIT A Python utility / library to sort Python imports.
312 SPHINX itcase_sphinx_theme pip   no license sphinx theme
313   itsdangerous pip   BSD Various helpers to pass trusted data to untrusted environments and back.
314   jaraco.structures pip   MIT jaraco.structures
315   jaraco.util pip   MIT General utility modules that supply commonly-used functionality
316 VIDEO jaraco.video pip   MIT jaraco.video implements a framegrabber inteface for Windows Video Capture devices.
317   jdcal pip   BSD Julian dates from proleptic Gregorian and Julian calendars.
318   jedi pip   MIT An autocompletion tool for Python that can be used for text editors.
319   jieba pip   MIT Chinese Words Segementation Utilities
320   jinja2 pip   BSD templating
321   jmespath pip   MIT JSON Matching Expressions
322   joblib pip   BSD distribute jobs, parallelization
323   JPype1 wheel   Apache Software License A Python to Java bridge.
324   jsonpickle pip   BSD Python library for serializing any arbitrary object graph into JSON.
325   jsonschema pip   MIT An implementation of JSON Schema validation for Python
326 DATA/ML julia pip   MIT Julia/Python bridge with IPython support
327 TEACH jupytalk pip   MIT materials for presentations
328 JUPYTER jupyter pip   BSD Jupyter
329 JUPYTER jupyter-console pip   BSD Jupyter console, new in Jupyter 4.0
330 JUPYTER jupyter-pip pip   New BSD License Allows Jupyter notebook extension writers to make their extension pip installable!
331 JUPYTER jupyter_client pip   BSD Jupyter client
332 JUPYTER jupyter_contrib_nbextensions github     This repository contains a collection of extensions that add functionality to the Jupyter notebook.
333 JUPYTER jupyter_core pip   BSD Jupyter Core
334 JUPYTER jupyter_sphinx pip   BSD Jupyter Sphinx Extensions
335 TEACH jyquickhelper pip   MIT Helpers for Jupyter notebooks.
336 ML kabuki pip   As Is kabuki is a python toolbox that allows easy creation of hierarchical bayesian models for the cognitive sciences.
337 DATA/ML keras pip   MIT deep learning
338   keyring pip   MIT, Python Store and access your passwords safely.
339 GUI Kivy wheel   MIT GUI, interface for games, mobile (use sudo apt-get install python3-kivy on Linux)
340 GUI kivy-garden pip   MIT Garden tool for kivy flowers.
341 ML knnimpute pip     k-Nearest Neighbor imputation
342   kombu pip   BSD Messaging library for Python (for celery)
343 DEEP LEARNING Lasagne pip   MIT Lasagne is a lightweight library to build and train neural networks in Theano.
344   lazy-object-proxy pip   BSD A fast and thorough lazy object proxy
345 ML lda pip   Mozilla Public License 2.0 (MPL 2.0) lda implements latent Dirichlet allocation (LDA) using collapsed Gibbs sampling.
346 WEB ldap3 pip   LGPL v3 ldap3 is a strictly RFC 4510 conforming LDAP V3 pure Python client library.
347 VIZ leather pip   MIT Leather is the Python charting library for those who need charts now and don’t care if they’re perfect.
348   libLAS wheel   BSD libLAS is a C/C++ library for reading and writing the very common LAS LiDAR format.
349   liblinear wheel   BSD A Library for Large Linear Classification
350   libsvm wheel   BSD SVM library
351 OPTIM lifelines pip   MIT survival analysis
352 DATA/ML lightgbm pip   The MIT License (Microsoft) Parallelized Stochastic Gradient Descent (only available on Python 3 and x64)
353 VIZ lightning-python pip   MIT Python client for the lightning API
354 PROFILING line-profiler wheel   BSD line_profiler is a module for doing line-by-line profiling of functions. kernprof is a convenient script for running either line_profiler or the Python standard library’s cProfile or profile modules, depending on what is available.
355   llvmlite wheel   BSD lightweight wrapper around basic LLVM functionality, check issue https://github.com/cmderdev/cmder/issues/490 for missing api-ms-win-crt-runtime-l1-1-0.dll
356 OPTIM lmfit pip   BSD Least-Squares Minimization with Bounds and Constraints
357   locket pip   BSD File-based locks for Python for Linux and Windows
358   lockfile pip   MIT Platform-independent file locking module
359   Logbook wheel   BSD A logging replacement for Python
360   logutils pip   Copyright (C) 2010-2017 by Vinay Sajip. All Rights Reserved. See LICENSE.txt for license. Logging utilities
361   lru_dict pip     An Dict like LRU container.
362 OPTIM lsqfit wheel   GPLv3+ Utilities for nonlinear least-squares fits
363 WORKFLOW luigi pip   Apache License 2.0 workflows, data workflows
364   lxml wheel   BSD xml parsers (C++)
365   lz4 wheel   BSD LZ4 Bindings for Python (for dpark)
366 VIZ mahotas wheel   MIT Mahotas: Computer Vision Library
367   Mako pip   MIT templating
368   mammoth pip   BSD Convert Word documents from docx to simple and clean HTML and Markdown
369   marisa_trie wheel   MIT Static memory-efficient & fast Trie-like structures for Python (based on marisa-trie C++ library)
370   markdown pip   BSD License markdown parser (for bokeh)
371   markdown2 pip   MIT markdown parser
372   markupsafe pip   BSD parses mardown
373 VIZ matplotlib wheel   BSD most used plotting library
374   mbstrdecoder pip   MIT multi-byte character string decoder
375 STYLE mccabe pip   Expat license This module provides a plugin for flake8, the Python code checker.
376 SPHINX mdn-sphinx-theme pip   Mozilla Public License 2.0 (MPL 2.0) A Sphinx theme for the Mozilla Developer Network
377 ML MDP pip   http://mdp-toolkit.sourceforge.net/license.html Python data processing framework.
378 PROFILING memory-profiler pip   BSD A module for monitoring memory usage of a python program
379 JUPYTER metakernel pip   BSD more magic commands for Jupyter
380 WEB mezzanine pip   BSD Mezzanine is a powerful, consistent, and flexible content management platform.
381 DATA/ML milk wheel   MIT machine learning toolkit
382   minepy wheel   GPLv3 interface to MineCraft
383 VIZ missingno pip   As Is Messy datasets? Missing values? missingno provides a small toolset of flexible and easy-to-use missing data visualizations and utilities that allows you to get a quick visual summary of the completeness (or lack thereof) of your dataset.
384   mistune pip   BSD The fastest markdown parser in pure Python with renderer features, inspired by marked.
385 DATA/ML mkl_service wheel     This package exposes a few functions which are declared in mkl_service.h. The main purpose of the package is to allow the user to change the number of CPU’s MKL is using at runtime.
386   mlpy wheel   GPLv3 mlpy is a Python module for Machine Learning built on top of NumPy/SciPy, has wavelets
387 TEACH mlstatpy pip   MIT materials for machine learning
388 ML mlxtend pip   BSD 3-Clause A library consisting of useful tools and extensions for the day-to-day data science tasks.
389   mnist pip     Python utilities to download and parse the MNIST dataset
390   mock pip   BSD mock is a library for testing in Python. It allows you to replace parts of your system under test with mock objects and make assertions about how they have been used.
391   monotonic pip   Apache This module provides a monotonic() function which returns the value (in fractional seconds) of a clock which never goes backwards. It is compatible with Python 2 and Python 3.
392   monty pip   MIT Monty is the missing complement to Python.
393   more-itertools pip   MIT More routines for operating on iterables, beyond itertools
394 VIDEO moviepy pip   MIT License Video editing with Python
395   mpi4py wheel   BSD MPI for Python
396 VIZ mpld3 pip   BSD 3-clause mpld3 project brings together Matplotlib and D3js.
397   mpmath pip   BSD mpmath is a free (BSD licensed) Python library for real and complex floating-point arithmetic with arbitrary precision.
398   msgpack-numpy pip   BSD Numpy data serialization using msgpack
399   msgpack-python pip   Apache Software License MessagePack (de)serializer.
400   msrest pip   MIT License AutoRest swagger generator Python client runtime.
401   msrestazure pip   MIT License AutoRest swagger generator Python client runtime. Azure-specific module.
402   mss pip   MIT An ultra fast cross-platform multiple screenshots module in pure python using ctypes
403   multi-key-dict pip   License :: OSI Approved :: MIT License (http://opensource.org/licenses/MIT) Multi key dictionary implementation
404   multimethods pip   MIT A multimethod implementation, loosely based on Guido’s initial ‘Five-minute Multimethods in Python.
405   multipledispatch pip   BSD A relatively sane approach to multiple dispatch in Python.
406   multiprocess wheel   BSD better multiprocessing and multithreading in python
407   munch pip   MIT A dot-accessible dictionary (a la JavaScript objects).
408   murmurhash pip   MIT Cython .pxd files for some of the MurmurHash 2 and 3 hash functions, with a slightly more Pythonic API. The only access to these functions is via Cython — I don’t see why they should be useful from pure Python.
409   mutagen pip   GNU GPL v2 read and write audio tags for many formats in Python 3
410   mutagenx pip   GNU GPL v2 read and write audio tags for many formats in Python 3
411 SQL mysqlclient wheel   GPL MySQL driver written in Python which does not depend on MySQL C client libraries and implements the DB API v2.0 specification (PEP-249).
412   natgrid wheel   Restricted Python interface to NCAR natgrid library (for matplotlib)
413   natsort pip   MIT Sort lists naturally
414 JUPYTER nbbrowserpdf pip   BSD-3-Clause LaTeX-free PDF generation from Jupyter Notebooks
415 JUPYTER nbconvert pip   BSD IPython, notebooks conversion, new in Jupyter 4.0
416   nbdime pip   BSD Comparison of notebooks
417 JUPYTER nbformat pip   BSD IPython, notebooks conversion, new in Jupyter 4.0
418 JUPYTER nbpresent pip   BSD-3-Clause Next generation slides from Jupyter Notebooks
419 JUPYTER nbsphinx pip   MIT nbsphinx is a Sphinx extension that provides a source parser for *.ipynb files.
420 JUPYTER nbupload pip   MIT widget to upload a file in a notebook
421   ndg-httpsclient pip   BSD - See ndg/httpsclient/LICENCE file for details Provides enhanced HTTPS support for httplib and urllib2 using PyOpenSSL
422   netaddr pip   BSD License Pythonic manipulation of IPv4, IPv6, CIDR, EUI and MAC network addresses
423   netCDF4 wheel   OSI Approved xarray uses this module to save and read data (netCDF=Unidata network Common Data Form)
424 VIZ networkx pip   BSD graph libraries, basic drawing
425 DATA/ML neural-python pip   MIT NeuralPy is the Artificial Neural Network library implemented in Python.
426 DATA/ML nitime wheel   Simplified BSD Nitime is a library for time-series analysis of data from neuroscience experiments.
427 DATA/ML NLopt wheel   LGPL linear, quadratic optimization
428 NLP nltk pip   Apache License, Version 2.0 NLP, natural language processing
429   nodeenv pip   BSD Node.js virtual environment builder
430 ML nolearn pip   MIT nolearn contains a number of wrappers and abstractions around existing neural network libraries, most notably Lasagne, along with a few machine learning utility modules. All code is written to be compatible with scikit-learn.
431   nose pip   GNU LGPL run unit tests
432   nose-parameterized pip   BSD for theano
433 JUPYTER notebook pip   BSD Jupyter notebooks, new in Jupyter 4.0
434 JUPYTER notedown pip   BSD 2-Clause Convert markdown to IPython notebook.
435   nuitka pip   Apache License, Version 2.0 C++ compilation, code optimization
436   numba wheel   BSD Numba is an Open Source NumPy-aware optimizing compiler for Python sponsored by Continuum Analytics, Inc.
437 OPTIM numdifftools pip   new BSD Solves automatic numerical differentiation problems in one or more variables.
438   numexpr wheel   MIT Fast numerical array expression evaluator for Python, NumPy, PyTables, pandas, bcolz and more.
439 DATA/ML numpy wheel   BSD matrix computation
440   numpydoc pip   BSD Sphinx extension to support docstrings in Numpy format
441   oauth2client pip   Apache 2.0 The oauth2client is a client library for OAuth 2.0.
442   oauthlib pip   BSD A generic, spec-compliant, thorough implementation of the OAuth request-signing logic
443 DATA/ML oct2py pip   MIT Python to GNU Octave bridge –> run m-files from python.
444   octave_kernel pip   BSD A Jupyter kernel for Octave.
445   odfpy pip   GNU General Public License v.2 + Apache License v.2 Python API and tools to manipulate OpenDocument files
446 DATA/ML odo pip   BSD usually used with blaze, handles dataframe in various type of containers
447   olefile pip   BSD Python package to parse, read and write Microsoft OLE2 files (Structured Storage or Compound Document, Microsoft Office) - Improved version of the OleFileIO module from PIL, the Python Image Library.
448   opencv_python wheel   BSD OpenVC wrapper
449   openpyxl pip   MIT/Expat reads/writes Excel files, version is 1.8.6 due to pandas which does not work with more recent verrsions yet
450 ORANGE orange3 pip     Orange is a component-based data mining software. It includes a range of data visualization, exploration, preprocessing and modeling techniques. It can be used through a nice and intuitive user interface or, for more advanced users, as a module for the Python programming language.
451 ORANGE orange3-associate pip     This module implements FP-growth [1] frequent pattern mining algorithm with bucketing optimization [2] for conditional databases of few items.
452 ORANGE Orange3-ImageAnalytics pip   GPLv3+ Orange3 add-on for image data mining.
453 ORANGE Orange3-Network pip   GPLv3+ Orange Network is an add-on for Orange data mining software package. It provides network visualization and analysis tools.
454 ORANGE orange3-text pip     Orange3 Text extends Orange3, a data mining software package, with common functionality for text mining. It provides access to publicly available data, like NY Times, Twitter and PubMed. Further, it provides tools for preprocessing, constructing vector spaces (like bag-of-words, topic modeling and word2vec) and visualizations like word cloud end geo map. All features can be combined with powerful data mining techniques from the Orange data mining framework.
455 VIZ osmapi pip   GPLv3 Python wrapper for the OSM API
456   packaging pip   BSD or Apache License, Version 2.0 helpers for packages
457   palettable pip   MIT Color palettes for Python
458 DATA/ML pandas wheel   BSD manipulate table as SQL in memory
459 DATA/ML pandas-datareader pip   BSD License Up to date remote data access for pandas, works for multiple versions of pandas.
460 VIZ pandas-highcharts pip   LICENSE plotting in javascript and pandas
461   pandoc-attributes pip   BSD 2-Clause An Attribute class to be used with pandocfilters
462   pandocfilters pip   BSD Utilities for writing pandoc filters in python
463   param wheel   BSD Declarative Python programming using Parameters.
464 NETWORK paramiko pip   LGPL SSH2 protocol library
465   parsel pip   BSD Parsel is a library to extract data from HTML and XML using XPath and CSS selectors.
466   parsimonious pip   MIT (Soon to be) the fastest pure-Python PEG parser I could muster
467   partd pip   BSD Appendable key-value storage
468   passlib pip   BSD comprehensive password hashing framework supporting over 30 schemes
469 JUPYTER path.py pip   MIT IPython, dependency
470   pathlib2 pip   MIT for ggplot, Object-oriented filesystem paths
471   pathvalidate pip   MIT A python library to validate/sanitize a string such as filenames/variable-names/excel-sheet-names.
472 DATA/ML patsy pip   2-clause BSD A Python package for describing statistical models and for building design matrices.
473   pbr pip   Apache Software License PBR is a library that injects some useful and sensible default behaviors into your setuptools run.
474   pdfminer3k pip   MIT PDF parser and analyzer
475 PDF pdfrw pip   MIT PDF file reader/writer library
476   pep8 pip   Expat license official guidelines on Python style
477   persistent wheel   ZPL 2.1 Objets persistants translucides
478 JUPYTER pexpect pip   ISC license needed by ipykernel on Linux, Pexpect makes Python a better tool for controlling other applications (needed by metakernel).
479 SQL pg8000 pip   BSD A Pure-Python PostgreSQL
480   picklable-itertools pip   MIT A reimplementation of the Python standard library’s itertools, in Python, using picklable iterator objects. (fuel)
481 JUPYTER pickleshare pip   MIT IPython, dependency
482   Pillow wheel   Standard PIL License read/create images
483   PIMS pip   As Is Python Image Sequence (for trackpy)
484   pint pip     Physical quantities module
485   pipdeptree pip   MIT License displays module dependencies as a tree
486   pivottablejs pip   MIT PivotTable.js integration for Jupyter/IPython Notebook.
487   pkginfo pip   MIT Query metadatdata from sdists / bdists / installed packages.
488   plac pip   BSD License The smartest command line arguments parser in the world
489   planar wheel   BSD 2D planar geometry library for Python.
490 VIZ plotly pip   MIT Plotly’s Python graphing library makes interactive, publication-quality graphs online. Examples of how to make line plots, scatter plots, area charts, bar charts, error bars, box plots, histograms, heatmaps, subplots, multiple-axes, polar charts and bubble charts.
491   ply pip   BSD Python Lex & Yacc (for thrifty)
492   Pmw pip   BSD Pmw is a toolkit for building high-level compound widgets in Python using the Tkinter module.
493 ML polylearn wheel   Simplified BSD A library for factorization machines and polynomial networks for classification and regression in Python.
494   portend pip     TCP port monitoring utilities
495   preshed pip   MIT Cython hash table that trusts the keys are pre-hashed
496   prince pip   MIT Prince is a factor analysis library for datasets that fit in memory.
497 VIZ progressbar2 pip   BSD Text progress bar library for Python. (fuel)
498 JUPYTER prompt_toolkit pip     Library for building powerful interactive command lines in Python
499   protobuf pip   3-Clause BSD License Protocol Buffers are Google’s data interchange format
500   psutil wheel   BSD cross-platform library for retrieving information onrunning processes and system utilization (CPU, memory, disks, network)in Python.
501   psycopg2 wheel   LGPL with exceptions or ZPL Python-PostgreSQL Database Adapter
502   PTable pip   BSD (3 clause) A simple Python library for easily displaying tabular data in a visually appealing ASCII table format. (for streamparse)
503 JUPYTER/LINUX ptyprocess pip   ISC dependency for the terminado, Run a subprocess in a pseudo terminal
504 DATA/ML PuLP wheel   Copyright (c) 2002-2005, Jean-Sebastien Roy (js@jeannot.org) linear, quadratique optimization with constraints
505   py pip   MIT license library with cross-python path, ini-parsing, io, code, log facilities
506   py4j pip   BSD License Enables Python programs to dynamically access arbitrary Java objects
507 ML py_earth wheel     A Python implementation of Jerome Friedman’s Multivariate Adaptive Regression Splines algorithm, in the style of scikit-learn. The py-earth package implements Multivariate Adaptive Regression Splines using Cython and provides an interface that is compatible with scikit-learn’s Estimator, Predictor, Transformer, and Model interfaces. For more information about Multivariate Adaptive Regression Splines, see the references below.
508 OPTIM pyamg wheel   MIT PyAMG is a library of Algebraic Multigrid (AMG) solvers with a convenient Python interface.
509   pyasn1 pip   BSD ASN.1 types and codecs (for pysnmp)
510   pyasn1-modules pip   BSD A collection of ASN.1-based protocols modules.
511   PyAudio wheel   MIT PyAudio provides Python bindings for PortAudio v19, the cross-platform audio I/O library. With PyAudio, you can easily use Python to play and record audio streams on a variety of platforms (e.g., GNU/Linux, Microsoft Windows, and Mac OS X).
512   pybars3 pip   GNU Library or Lesser General Public License (LGPL) Handlebars.js templating
513 DATA/ML pyclustering pip   GNU General Public License v3 (GPLv3) many kinds of clustering (Optics, DBScan, x-means, …)
514 STYLE pycodestyle pip   Expat license Python style guide checker
515   pycontracts pip   LGPL PyContracts is a Python package that allows to declare constraints on function parameters and return values, setup for version 1.7.7 is bugged
516   pycosat wheel   MIT PicoSAT is a popular SAT solver written by Armin Biere in pure C.
517   pycparser pip   BSD pycparser is a complete parser of the C language, written in pure Python using the PLY parsing library. It parses C code into an AST and can serve as a front-end for C compilers or analysis tools.
518   pycrypto wheel2   Public Domain + patent for some algorithm Cryptographic modules for Python (not available on x64 and Python 3)
519   pycryptodomex pip   BSD Cryptographic modules for Python (not available on x64 and Python 3)
520 GPU pycuda wheel   MIT PyCUDA lets you access Nvidia’s CUDA parallel computation API from Python.
521   pycurl wheel   LGPL/MIT PycURL, a interface to the libcurl library. (for grab)
522   PyDispatcher pip   BSD Multi-producer-multi-consumer signal dispatching mechanism
523 STYLE pydocstyle pip   MIT Python docstring style checker
524 MUSIC pydub pip   MIT Pydub lets you do stuff to audio in a way that isn’t stupid.
525   pydy pip   LICENSE.txt Multibody Dynamics with Python
526   pyemd wheel   MIT A Python wrapper for Ofir Pele and Michael Werman’s implementation of the Earth Mover’s Distance.
527 TEACH pyensae pip   MIT helpers, Hadoop, SQL, financial times series, …
528 NETWORK pyexecjs pip   MIT License Run JavaScript code from Python (for pyreact)
529 STYLE pyflakes pip   MIT verify pep8 on a script
530 DATA/ML pyflux wheel   As Is An open source time series library for the Python Programming Language
531 VIZ pygal pip   GNU LGPL v3+ plotting (javascript)
532 VIZ pygal_maps_ch pip   GNU LGPL v3+ Swiss canton map for pygal
533 VIZ pygal_maps_fr pip   GNU LGPL v3+ French maps for pygal
534 VIZ pygal_maps_world pip   LGPLv3+ extension to pygal (maps)
535 SPHINX pygal_sphinx_directives pip   GNU LGPL v3+ Pygal sphinx integration
536 GUI pygame wheel   LGPL GUI, interface for games (needs to be installed from www.pygame.org on Linux)
537   pygit2 wheel   GPLv2 with linking exception Pygit2 is a set of Python bindings to the libgit2 shared library, libgit2 implements the core of Git.
538 GUI pyglet pip   BSD a cross-platform windowing and multimedia library for Python
539   pygments pip   BSD License syntax highlighting package written in Python
540 PROFILING pyinstrument pip   BSD A Python profiler that records the call stack of the executing code, instead of just the final function in it.
541   PyJWT pip   MIT JSON Web Token library for Python 3.
542   pylint pip   GPL statistics on Python script style
543   pylzma wheel   LGPL Python bindings for the LZMA library by Igor Pavlov.
544   pymatbridge pip   BSD pymatbridge is a set of python and matlab functions to allow these two systems to talk to each other
545 PHYS pymatgen wheel   MIT Pymatgen (Python Materials Genomics) is a robust, open-source Python library for materials analysis.
546 DATA/ML pymc wheel   Academic Free License Monte Carlo computation
547 DATA/ML pymc3 github   Apache License, Version 2.0 Monte Carlo computation (Python 3 only)
548   PyMeta3 pip   MIT License Pattern-matching language based on OMeta for Python 3 and 2
549 TEACH pymmails pip   MIT read/send emails
550 NoSQL pymongo wheel   Apache License, Version 2.0 Python wrapper for MongoDB
551   pympler pip   Apache License, Version 2.0 Pympler is a development tool to measure, monitor and analyze the memory behavior of Python objects in a running Python application.
552 SQL pymssql wheel   LGPL A simple database interface for Python that builds on top of FreeTDS to provide a Python DB-API (PEP-249) interface to Microsoft SQL Server.
553   pymvpa2 wheel   MIT PyMVPA is a Python module intended to ease pattern classification analyses of large datasets.
554 TEACH pymyinstall pip   MIT easy installation of modules including Windows
555 SQL PyMySQL pip   MIT Pure-Python MySQL Driver
556 NETWORK PyNaCl pip   Apache License 2.0 Python binding to the Networking and Cryptography (NaCl) library
557 SQL pyodbc wheel   MIT access to protocal ODBC (SQL databases)
558 GPU pyopencl wheel   MIT PyOpenCL lets you access the OpenCL parallel computation API from Python.
559   PyOpenGL wheel   BSD use OpenGL in Python
560   PyOpenGL_accelerate wheel   BSD Acceleration code for PyOpenGL
561   pyOpenSSL pip   Apache License, Version 2.0 Python wrapper module around the OpenSSL library
562   pyotp pip   BSD License PyOTP is a Python library for generating and verifying one-time passwords.
563   pyparsing pip   MIT License alternative approach to creating and executing simple grammars
564 PDF pyPdf github   BSD read PDF
565 PDF PyPDF2 pip   BSD PDF toolkit
566   pypiserver pip   BSD run a local pypi server
567   pypmc wheel   GPLv2 pypmc is a python package focusing on adaptive importance sampling.
568   pypng pip   MIT Pure Python PNG image encoder/decoder
569 VIZ pyproj wheel   OSI Approved python interface to PROJ4 library for cartographic transformations https://jswhit.github.io/pyproj, needed by cartopy
570 GUI PyQt4 wheel   GNU General Public License (GPL) + Other/Proprietary License  
571 GUI PyQt5 pip   GPL v3  
572 GUI pyqtgraph pip   MIT Scientific Graphics and GUI Library for Python, depends on PySide
573 TEACH pyquickhelper pip   MIT helpers to generation documentation
574 NETWORK pyreact pip   Apache-2.0 Python bridge to JSX & the React JavaScript library. (for pyxley)
575   pyreadline pip   BSD python implementation of GNU readline functionality
576 TEACH pyrsslocal pip   MIT RSS readers
577 MATHS PySAL pip   BSD PySAL is an open source library of spatial analysis functions written in Python intended to support the development of high level applications.
578   pyshp pip   MIT Pure Python read/write support for ESRI Shapefile format
579 GUI PySide wheel   GNU Library or Lesser General Public License (LGPL) open source version of PyQt (issue on Linux and Anaconda)
580   pysmi pip   BSD SNMP SMI/MIB Parser (for pysnmp)
581 NETWORK pysnmp pip   BSD A pure-Python SNMPv1/v2c/v3 library
582   PySocks pip   BSD A semi-actively maintained SocksiPy fork. Contains many improvements to the original.
583   pystache pip   MIT Mustache for Python (for bokeh)
584 DATA/ML pystan pip   GNU General Public License v3 (GPLv3) PyStan provides an interface to Stan, a package for Bayesian inference using the No-U-Turn sampler, a variant of Hamiltonian Monte Carlo.
585 DATA/ML pysterior pip   MIT pysterior is a machine learning library for Python which aims to make Bayesian parametric regression and classification models accessible and easy to use. The library allows users to construct supervised learning models using an intuitive interface similar to that used by scikit-learn.
586   pystorm pip   Apache License 2.0 Battle-tested Apache Storm Multi-Lang implementation for Python.
587 ML pystruct wheel     Learning Structured Prediction in Python
588   pytablereader pip   MIT A python library to load structured table data from files/URL with various data format: CSV/Excel/HTML/JSON/LTSV/Markdown/TSV.
589   pytablewriter pip   MIT License convert a dataframe into many formats
590   pytagcloud pip   BSD Create beautiful tag clouds as images or HTML
591   pytest pip   MIT license pytest: simple powerful testing with Python
592   python-daemon pip   Apache-2 Library to implement a well-behaved Unix daemon process (for luigi)
593   python-dateutil pip   Simplified BSD helpers to manipulate dates
594   python-docx pip   The MIT License (MIT) read/write Word document
595   python-editor pip   Apache Programmatically open an editor, capture the result.
596   python-gmaps pip   BSD Google Maps API client http://python-gmaps.readthedocs.org
597   python-jenkins pip   BSD interact with Jenkins
598   python-mimeparse pip   MIT A module provides basic functions for parsing mime-type names and matching them against a list of media-ranges. (falcon)
599   python-pptx pip   The MIT License (MIT) read/write PowerPoint presentation
600   python-utils pip   BSD Python Utils is a module with some convenient utilities not included with the standard Python install
601   python3-linkedin pip   MIT Python Interface to the LinkedIn API
602   python_Levenshtein wheel     C implementation of Levenshtein distance.
603   pythonnet wheel   Zope Public License Python binding for C#
604   pythonqwt pip   MIT Qt plotting widgets (Spyder)
605 VIZ pythreejs pip   BSD A Python / ThreeJS bridge utilizing the Jupyter widget infrastructure.
606   pytils pip   MIT Russian-specific string utils (for selection, weblib)
607   pytool pip   ALv2 A collection of tools for Python
608   pytools pip   MIT A collection of tools for Python
609   pytz pip   MIT World timezone definitions, modern and historical
610 DATA/ML PyWavelets wheel   MIT wavelets computation
611 WINDOWS pywin32 wheel2   PSF call Windows DLL
612 WINDOWS pywin32-ctypes pip   BSD call Windows DLL
613 VIZ PyX wheel   GNU General Public License (GPL) plotting
614 NETWORK pyxley pip   MIT A pure-Python SNMPv1/v2c/v3 library
615   PyYAML wheel   MIT YAML parser and emitter for Python
616 NETWORK pyzmq wheel   LGPL+BSD python librairies for Omz (pipy distributes the binaries)
617 VIZ qgrid pip   Apache 2.0 A Pandas DataFrame viewer for IPython Notebook.
618 DATA/ML QInfer pip   http://www.gnu.org/licenses/agpl-3.0.en.html QInfer is a library using Bayesian sequential Monte Carlo for quantum parameter estimation.
619   QtAwesome pip   MIT QtAwesome enables iconic fonts such as Font Awesome and Elusive Icons in PyQt and PySide applications.
620 JUPYTER qtconsole pip   BSD IPython, notebooks, qtconsole
621 GUI qtpy pip   MIT single interface for QtPy4, 5, PySide
622   Quandl pip   MIT access Quandl API
623   queuelib pip   BSD Collection of persistent (disk-based) queues
624 OPTIM qutip wheel   BSD QuTiP is open-source software for simulating the dynamics of open quantum systems.
625   recommonmark pip   MIT For pymc3???
626   redis pip   MIT Python client for Redis key-value store
627   regex wheel   Python Software Foundation License Alternative regular expression module, to replace re.
628 SPHINX releases github     Releases is a Python 2+3 compatible Sphinx extension designed to help you keep a source control friendly, merge friendly changelog file & turn it into useful, human readable HTML output.
629   reportlab wheel   BSD license (see license.txt for details), Copyright (c) 2000-2015, ReportLab Inc. This is the ReportLab PDF Toolkit. It allows rapid creation of rich PDF documents, and also creation of charts in a variety of bitmap and vector formats.
630   requests pip   Apache 2.0 human interface for http
631   requests-cache pip   BSD License Persistent cache for requests library
632   requests-file pip   Apache 2.0 File transport adapter for Requests
633   requests-ftp pip   Apache 2.0 FTP Transport Adapter for Requests
634   requests-oauthlib pip   ISC OAuthlib authentication support for Requests.
635   rope_py3k pip   GPL=OpenBSD refactoring library
636 DATA/ML rpy2 wheel   GPLv2+ interact with R (R_HOME needs to be set up on Linux)
637   rsa pip   ASL 2 Pure-Python RSA implementation
638 MATHS Rtree wheel   GNU Library or Lesser General Public License (LGPL) R-Tree spatial index for Python GIS
639   ruamel.yaml pip   MIT license ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order
640   rx pip   Apache License Reactive Extensions (Rx) for Python (LINQ)
641 AWS s3fs pip     Convenient Filesystem interface over S3
642 AWS s3transfer pip   Apache License 2.0 An Amazon S3 Transfer Manager
643 ML sacred pip   MIT Facilitates automated and reproducible experimental research
644   sas7bdat pip   MIT read/write SAS format
645   scikit-fusion pip   GPLv3 A Python module for data fusion built on top of factorized models.
646   scikit-image wheel   Modified BSD scikit-image is a collection of algorithms for image processing.
647 DATA/ML scikit-learn wheel   new BSD machine learning
648 DATA/ML scilab2py pip   MIT Python to Scilab bridge
649 DATA/ML scipy wheel   BSD scientific computation, eigen values, linear algebra
650 DATA/ML scoop pip   LGPL SCOOP (Scalable COncurrent Operations in Python) is a distributed task module allowing concurrent parallel programming on various environments, from heterogeneous grids to supercomputers
651 ML scrapy pip   BSD A high-level Web Crawling and Web Scraping framework
652 OPTIM scs wheel   MIT Solves convex cone programs via operator splitting.
653 VIZ seaborn pip   BSD (3-clause) nicer graphs than matplotlib for statistical purposes
654   selection pip   MIT API to extract data from HTML and XML documents. (for grab)
655 NETWORK selenium pip   Apache 2.0 Python wrapper for Selenium
656   semantic_version pip   BSD A library implementing the “SemVer” scheme.
657   semver pip   BSD Python helper for Semantic Versioning (http://semver.org/)
658 ML seqlearn wheel   MIT sequence classification toolkit for Python
659   service_identity pip   MIT Service identity verification for pyOpenSSL.
660   setproctitle wheel   BSD A Python module to customize the process title
661   setuptools-git pip   BSD This is a plugin for setuptools that enables git integration. Once installed, Setuptools can be told to include in a package distribution all the files tracked by git. This is an alternative to explicit inclusion specifications with MANIFEST.in.
662 OPTIM sfepy wheel     Simple Finite Elements in Python
663   Shapely wheel   BSD Manipulation and analysis of geometric objects in the Cartesian plane.
664 MATHS sima wheel   GNU General Public License v2 or later (GPLv2+) Software for analysis of sequential imaging data
665   simhash pip   MIT A Python implementation of Simhash Algorithm
666 JUPYTER simplegeneric pip   ZPL 2.1 IPython, dependency
667   simplejson wheel   MIT License json parser
668   SimpleSQLite pip   MIT SimpleSQLite is a Python library to simplify the table creation and data insertion into SQLite database.
669 GUI SIP pip   GPL v2 or GPL v3 or BSD For PyQt5
670   six pip   MIT helpers for python 2/3 conversion
671 ML sklearn_contrib_lightning wheel     large-scale linear classification, regression and ranking
672 ML sklearn_pandas pip   ~MIT This module provides a bridge between Scikit-Learn’s machine learning methods and pandas-style Data Frames.
673 ML skll pip   BSD 3 clause SciKit-Learn Laboratory makes it easier to run machinelearning experiments with scikit-learn.
674   slicerator pip   BSD A lazy-loading, fancy-sliceable iterable.
675   smart_open pip   Public Domain Utils for streaming large files (S3, HDFS, gzip, bz2…), provides the same API for many format
676   smmap2 pip   BSD A pure python implementation of a sliding window memory map manager
677 VIZ smopy pip   BSD OpenStreetMap image tiles in Python
678 PROFILING snakeviz pip   BSD SnakeViz is a browser based graphical viewer for the output of Python’s cProfile module.
679   snowballstemmer pip   BSD This package provides 16 stemmer algorithms (15 + Porter English stemmer) generated from Snowball algorithms, needed by sphinx-rtd-theme.
680 NETWORK sockjs-tornado pip   Copyright (C) 2011 Serge S. Koval SockJS-tornado is a Python server side counterpart of SockJS-client browser library running on top of Tornado framework.
681 SPHINX solar_theme pip   BSD~MIT sphinx theme
682   sortedcontainers pip   Apache 2.0 Python Sorted Container Types: SortedList, SortedDict, and SortedSet
683   sounddevice wheel   MIT This Python module provides bindings for the PortAudio library and a few convenience functions to play and record NumPy arrays containing audio signals.
684 NLP spacy pip   MIT Industrial-strength NLP
685   spglib wheel   BSD Python bindings for C library for finding and handling crystal symmetries
686 SPHINX sphinx pip   BSD documentation generation based on RST
687 SPHINX sphinx-better-theme pip   LICENSE sphinx theme
688 SPHINX sphinx-corlab-theme pip   LGPLv3+ sphinx theme
689 SPHINX sphinx-docs-theme pip   MIT sphinx theme
690 SPHINX sphinx-gallery pip   3-clause BSD gallery for examples
691 SPHINX sphinx-rtd-theme pip   MIT sphinx theme
692 SPHINX sphinx_bootstrap_theme pip   MIT sphinx theme
693 SPHINX sphinx_py3doc_enhanced_theme pip   BSD sphinx theme
694 SPHINX sphinx_readable_theme pip   MIT sphinx theme
695 SPHINX sphinx_theme_pd pip   MIT sphinx theme
696   sphinxcontrib-blockdiag pip   BSD Sphinx “blockdiag” extension
697 SPHINX sphinxcontrib-images github   Apache 2 include images in Sphinx documentation
698 SPHINX sphinxcontrib-imagesvg pip   BSD support svg in Sphinx
699 SPHINX sphinxcontrib-jsdemo pip   BSD to demo HTML or Javascript in Sphinx documentation
700 SPHINX sphinxcontrib-lunrsearch pip   MIT simple autocompletion for the sphinx documentation
701 SPHINX sphinxjp.themecore pip   MIT A sphinx theme plugin extension.
702 SPHINX sphinxjp.themes.basicstrap pip   MIT sphinx theme
703 SPHINX sphinxjp.themes.gopher pip   MIT sphinx theme
704 SPHINX sphinxjp.themes.htmlslide pip   MIT sphinx theme
705   sphinxjp.themes.revealjs pip   MIT slides based on revealjs, needed to convert notebook into slides
706 SPHINX sphinxjp.themes.sphinxjp pip   MIT sphinx theme
707 SPHINX sphinxtrap pip   MIT sphinx theme
708 NETWORK splinter pip   As Is browser abstraction for web acceptance testing
709   sputnik pip   MIT Data package manager library
710   spyder pip   MIT scientific IDE
711 SQL SQLAlchemy wheel   MIT License model SQL queries as objects
712   sqlite_bro pip   MIT GUI for SQLite
713 SQL sqlparse pip   BSD Non-validating SQL parser
714 DATA/ML statsmodels wheel   BSD License statistical modelling, depends on scipy
715   streamparse pip   Apache License 2.0 Streamparse lets you run Python code against real-time streams of data via Apache Storm.
716   structures pip   GPL User-friendly library for creating data structures.
717   suds-jurko pip   (specified using classifiers) Lightweight SOAP client (Jurko’s fork)
718   supersmoother pip   BSD 3-clause This is an efficient implementation of Friedman’s SuperSmoother [1] algorithm in pure Python. It makes use of numpy for fast numerical computation.
719   sympy pip   BSD SymPy is a Python library for symbolic mathematics.
720   TA_Lib wheel     This is a Python wrapper for TA-LIB based on Cython instead of SWIG.
721   tables wheel   BSD 2-Clause PyTables is a package for managing hierarchical datasets and designed to efficiently and easily cope with extremely large amounts of data.
722   tabulate pip   Copyright (c) 2011-2016 Sergey Astanin Pretty-print tabular data
723   tblib pip   BSD Traceback fiddling library. For now allows you to pickle tracebacks and raise exceptions with pickled tracebacks in different processes. This allows better error handling when running code over multiple processes (imagine multiprocessing, billiard, futures, celery etc)
724 TEACH teachpyx pip   MIT materials for teachings
725   tempora pip   MIT Objects and routines pertaining to date and time (tempora)
726 DATA/ML tensorflow wheel   Apache 2.0 Deep Learning from Google
727 DATA/ML tensorflow-tensorboard pip   Apache 2.0 TensorBoard lets you watch Tensors Flow
728   termcolor pip   MIT ANSII Color formatting for output in terminal.
729   testpath pip   MIT Test utilities for code working with files and commands
730   text-unidecode pip   Artistic License The most basic Text::Unidecode port
731   textblob pip   MIT TextBlob is a Python (2 and 3) library for processing textual data. It provides a simple API for diving into common natural language processing (NLP) tasks such as part-of-speech tagging, noun phrase extraction, sentiment analysis, classification, translation, and more.
732 DATA/ML Theano pip   BSD deep learning, GPU
733 OPTIM thinc wheel   MIT Practical Machine Learning for NLP. Thinc is the machine learning library powering spaCy.
734   thrift pip     Python bindings for the Apache Thrift RPC system
735   thriftpy pip   MIT pure python implemention of Apache Thrift.
736   tifffile wheel   BSD Read and write image data from and to TIFF files. (for pims)
737 noSQL tinydb pip   MIT TinyDB is a tiny, document oriented database optimized for your happiness :) It’s written in pure Python and has no external requirements.
738 TEACH tkinterquickhelper pip   MIT windows on the top of tkinter
739   toml pip   MIT Python Library for Tom’s Obvious, Minimal Language
740 DATA/ML toolz pip   BSD Toolz provides a set of utility functions for iterators, functions, and dictionaries.
741 NETWORK tornado wheel   http://www.apache.org/licenses/LICENSE-2.0 python server, IPython relies on it
742 VIZ toyplot pip   BSD The kid-sized plotting toolkit for Python with grownup-sized goals.
743 ML TPOT pip   GNU/LGPLv3 Consider TPOT your Data Science Assistant. TPOT is a Python tool that automatically creates and optimizes machine learning pipelines using genetic programming.
744 JUPYTER tqdm pip   MPLv2.0, MIT Licences A Simple Python Progress Meter (for moviepy)
745 DATA/ML trackpy pip   BSD - 3 clauses trackpy is a Python package for particle tracking in 2D, 3D, and higher dimensions.
746 JUPYTER traitlets pip   BSD IPython, dependency
747   traits pip   BSD explicitly typed attributes for Python
748   traittypes pip   BSD Custom trait types for scientific computing.
749   transaction pip   ZPL 2.1 Transaction management for Python. This package contains a generic transaction implementation for Python. It is mainly used by the ZODB.
750   translationstring pip     Utility library for i18n relied on by various Repoze and Pyramid packages
751 ML treeinterpreter pip   BSD Package for interpreting scikit-learn’s decision tree and random forest predictions. Allows decomposing each prediction into bias and feature contribution components
752   triangle wheel   GNU LGPL Python Triangle is a python wrapper around Jonathan Richard Shewchuk’s two-dimensional quality mesh generator and delaunay triangulator library.
753   trollius pip   Apache License 2.0 Port of the Tulip project (asyncio module, PEP 3156)
754 TEACH tutormagic pip   MIT brings PythonTutor in a notebok
755   tweepy pip   MIT Python wrapper for the twitter API
756   twisted pip   MIT An asynchronous networking framework written in Python
757   typecheck-decorator pip   BSD License verifies decorators at running time
758   typepy pip   MIT A python library for variable type checker/validator/converter at run time.
759   tzlocal pip   CC0 1.0 Universal tzinfo object for the local timezone
760   ujson wheel   BSD License Ultra fast JSON encoder and decoder for Python
761   unidecode pip   GPL ASCII transliterations of Unicode text
762 STYLE unify pip   Expat License Modifies strings to all use the same (single/double) quote where possible.
763   untangle pip   MIT Converts XML to Python objects
764 STYLE untokenize pip   Expat License Transforms tokens into original source code (while preserving whitespace).
765   update_checker pip   Simplified BSD License A python module that will check for package updates.
766   uritemplate pip   BSD 3-Clause License or Apache License, Version 2.0 URI templates
767   urllib3 pip   MIT urllib2 extension
768   user-agent pip   MIT License A library to identify devices (phones, tablets) and their capabilities by parsing (browser/HTTP) user agent strings
769   validate_email pip   LGPL Validate_email verify if an email address is valid and really exists.
770 VIZ vega pip   BSD 3-clause Python/Jupyter notebook module for Vega, and Vega-Lite, Polestar, and Voyager. Notebooks with embedded visualizations can be viewed on github and nbviewer.
771   Versio pip   license.txt localshop dependency, manages versions
772   version-information pip   BSD Version information
773 VIDEO VideoCapture wheel   BSD A Win32 Python Extension for Accessing Video Devices
774 VIZ vincent pip   MIT License plotting
775   vine pip   BSD Promises, promises, promises
776   virtualenv pip   MIT creatre virtual environments
777   viscm pip   MIT tool for analyzing colormaps and creating new colormaps.
778   vispy pip   (new) BSD Vispy is a high-performance interactive 2D/3D data visualization library.
779 PROFILING vprof pip   BSD vprof is a Python package providing rich and interactive visualizations for various Python program characteristics such as running time and memory usage.
780   w3lib pip   BSD Library of web-related functions
781 JUPYTER wcwidth pip   MIT Measures number of Terminal column cells of wide-character codes
782   webcolors pip   BSD A library for working with color names and color value formats defined by the HTML and CSS specifications for use in documents on the Web.
783   webencodings pip   BSD Character encoding aliases for legacy web content
784   weblib pip   MIT Set of tools for web scraping projects (for grab)
785   werkzeug pip   BSD The Swiss Army knife of Python web development
786   wget pip   Public Domain pure python download utility
787   wheel pip   MIT handle wheels
788   whoosh pip   Two-clause BSD license search engine in Python
789 JUPYTER widgetsnbextension pip   BSD Interactive HTML widgets for Jupyter notebooks.
790   wikipedia pip   MIT Wikipedia API for Python
791 SPHINX wild_sphinx_theme pip   BSD sphinx theme
792   win_unicode_console pip   MIT  
793   wincertstore pip   PSFL Python module to extract CA and CRL certs from Windows” cert store (ctypes based).
794   winrandom wheel   Public domain This module gives direct access to Windows Cryptographic API CryptGetRandom() function, which is cryptographically strong pseudo-random number generator (PRNG) on Windows:
795 WINDOWS winshell pip   http://www.opensource.org/licenses/mit-license.php Windows shell functions
796 VIZ wordcloud wheel   MIT A little word cloud generator in Python.
797   wptools pip   MIT Wikipedia tools (for Humans)
798   wrapt wheel   BSD A Python module for decorators, wrappers and monkey patching.
799 DATA/ML xarray pip   Apache pandas like library for cubes (N-dimensional data)
800 DATA/ML xgboost wheel   Apache-2 Parallelized Stochastic Gradient Descent (only available on Python 3 and x64)
801   xlrd pip   BSD reads Excel files
802   XlsxWriter pip   BSD writes Excel files
803 WINDOWS xlwings pip   BSD reads/writes Excel files
804   xlwt pip   BSD writes Excel files
805   xmltodict pip   MIT Makes working with XML feel like you are working with JSON
806   xxhash wheel   BSD xxHash is an Extremely fast Hash algorithm, running at RAM speed limits.
807   yapf pip   Apache License, Version 2.0 Code formatter
808   zarr pip   MIT A minimal implementation of chunked, compressed, N-dimensional arrays for Python.
809   zc.lockfile pip   ZPL 2.1 Basic inter-process locks
810   ZConfig pip   ZPL 2.1 Structured Configuration Library
811   zdaemon pip   ZPL 2.1 Daemon process control library and tools for Unix-based systems
812   ZEO pip   ZPL 2.1 ZEO provides a client-server storage implementation for ZODB.
813 SPHINX zerovm-sphinx-theme pip   Apache License 2.0 sphinx theme
814   zict pip   BSD The dictionary / mutable mapping interface is powerful and multi-faceted.
815   zipline pip   Apache 2.0 A backtester for financial algorithms.
816   ZODB pip   ZPL 2.1 The Zope Object Database provides an object-oriented database for Python that provides a high-degree of transparency.
817   ZODB3 pip   ZPL 2.1 ZODB3 - Meta release for ZODB, persistent, BTrees and ZEO
818   zodbpickle wheel   PSFL 2 and ZPL 2.1 This package presents a uniform pickling interface for ZODB.
819   zope.exceptions pip   ZPL 2.1 Zope exception
820   zope.interface wheel   ZPL 2.1 interfaces for python
821   zs wheel   BSD S is a compressed, read-only file format for efficiently distributing, querying, and archiving arbitrarily large record-oriented datasets.

Footnotes