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 :epkg:`matplotlib`, de manipuler les données pandas et de faire du machine du machine learning :epkg:`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

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

Footnotes