Table des matières¶
0 Introduction¶
1 Python basics¶
- 00 - Premiers calculs
- 01 - Les variables
- 02 - Les types
- Conversion d'un type vers un autre
- Les chaînes de caractères
- Les listes
- Les dictionnaires
- Les n-uplets (tuples in english)
- 03 - Tests et boucles
- Logique booléenne - Tests
- Les boucles - Boucles avec for - Liste en compréhension - Boucle avec while - Break et Continue
- 04 - Les fonctions
- Signature d'une fonction
- Valeurs par défaut
- Fonctions récursives - Exercice
- 05 - Erreurs et exceptions
- Gérer les erreurs
- raise Exception
- try ... except - Pourquoi try et pas if ?
- Différentes exceptions
- Finalement
- What else?
- Plus loin
- 06 - Premiers programmes
- Un programme, kesako ? - Coding style
- Premier programme (notes d'élèves)
- Deuxième programme (manipulation de données dans un fichier) - Écriture dans un fichier - Exercice
- Bug !
- 07 - Algorithmique et tris
- L'art de l'algorithmique
- Comment trier efficacement ? - Exercice : Tri à bulle - Exercice : Tri rapide (Quicksort in English)
2 Deeper in Python¶
- 01 - Variables en mémoire
- Copie par valeur ou par référence
- Pointeurs et références
- Solutions pour modifier une liste
- 02 - La porté des variables
- Jusqu'où ma variable est visible ?
- nonlocal
- global
- 03 - Formatting
- 04 - Generators
- Un for dynamique
- yield pour les cas complexes
- 10 sys - under the hood
- Utilisation de la bibliothèque
sys
- Décrire mon environnement - Informations sur le stockage des données - Autres fonctions
- Utilisation de la bibliothèque
- 11 datetime
- 12 xml
- 90 Project
- Un projet Python
- Module
- Packet
- Organiser son projet
- Structure pour un paquet
- Poetry
- Gestion des envionnements
- Création d'un paquet
- Un projet Python
- 91 Tests
- Tests
- Assert
- Tests unitaires
- Doctest
- PyTest
- Tests de haut niveau
- Tester différentes configurations
- Nox + Poetry
- et avec doctest
- Assert
- Tests
- 92 Documentation
- La documentation d'un projet
- Mise en forme
- API
- Sphinx pour l'API
- Mise en forme
- La documentation d'un projet
3 Object Python¶
- 01 Classes and objects
- Objets
- 02 Inheritance - Appel direct d'une méthode d'une classe parente
- 03 Scope
- 04 View vs Copy
- 10 Magic methods - Une liste de méthodes magiques importantes
- 11 Decorators
- Créer son décorateur
4 Numpy¶
- np01 Numpy Introduction
- np02 Filtres
- np03 Manipulations
- np04 Xarray
- Étiqueter les dimensions
- Réordonner
- Concaténer
- Empiler des DataArray donne un DataSet
- Ajout de coordonnées
- Interpolation suivant les coordonnées
- Plus
- Étiqueter les dimensions
- np05 Notation Einstein
- np06 Linalg pour le calcul matriciel
- np90 petits exercices
- np91 exercice -- Manipulation d_images
- Créer la table des images
- Réorganiser la table
- Passer en niveaux de gris
- Ordonner par contraste
5 Pandas¶
- pd01 -- Pandas indexing
- Structure du
DataFrame
- Sélectionner une partie du tableau
- Le piège de l'indexation (loc et iloc)
- Optimisation (at & iat)
- Les filtres logiques
- Query
- Agir globalement
- Plus
- Structure du
- pd02 -- View vs copy
- pd03 -- Cleaning a dataframe
- pd04 Multi-index or N-dimensions DataFrames
- pd05 -- Group data
- Grouper des données suivant une colonne - Structure d'un groupe
- Grouper suivant plusieurs colonnes
- Grouper suivant un sous-index
- Appliquer différentes opérations
- Grouper tout en conservant la structure initiale
- pd06 -- Merging 2 dataframes
- Merge - df1 ∩ df2 sur les lignes - df1 + (df1 ∩ df2) - A ∪ B
- Join
- Concaténation - Jouons avec les axes
- pd07 -- Time dataframe
- Manipulation
- pd08 -- Visualizing a DataFrame
- pd09 -- Computation
- pd10 -- Getting data
- CSV
- Excel
- read_html
- Pandas datareader
- pd90 exercice -- Maires de France
- pd91 exercice -- Euronext 2018
- Création de notre super DataFrame
- Extraction de l'action AXA
- Un gros calcul
- Fusion de données
6 Graphics¶
- 10 -- Static graphics with Matplotlib
- Un tutorial plus approfondi
- 11 -- Static graphics with Seaborn
- Présentation des données - Une simple courbe - Distribution des données - Corrélation globale de N champs 2 à 2 - Afficher les valeurs de différentes catégories - Courbe de niveaux
- Statistiques - Moyenne et quartiles
- Plus
- 20 -- Dynamic graphics with Plotly -- Basics
- Figures interactives
- Plotly Express - Plotly avec Pandas - Courbes - Barres et histogrammes - Boîtes à moustaches
- Plotly - Camember
- 21 -- Dynamic graphics with Plotly -- Scatter and bubbles
- Nuages de points - Un nuage de point basique - Des bulles pour une dimension de plus - Une animation avec tout inclus !
- 22 -- Dynamic graphics with Plotly -- More chart types
- Graphiques scientifiques
- Graphiques statistiques
- Graphiques financiers
- Divers
- 23 -- Dynamic graphics with Plotly -- Subplots
- Plusieurs dessins dans une même figure
- Plotly Express - Pour de simples courbes - Notes en marge
- Plotly - Des figures rangées dans une grille - Un placement libre de chaque sous-figure
- 24 -- Dynamic graphics with Plotly -- 3D
- Surface - Définir la scène
- Maillage surfacique en 3D
- Nuage de points et caméra
- Plus
- 30 -- Maps
- Un peu de cartographie - Les données : le prix de l'essence
- Folium
- Objets géographiques - Plotly
- 40 -- A dashboard with Dash -- Layout
- Dash -- Layout
- Installation de Dash sur sa machine
- Premier tableau de bord
- Plus d'information sur la partie HTML
- Dash -- Layout
- 41 -- A dashboard with Dash -- Events
- Les événements dans Dash
- Hello World!
- Interaction clavier
- C'est tout !
- Attention aux variables globales
- Un exemple plus complet
- Les événements dans Dash