Skip to content
Skip to content
DataCraft
Open Button
Accueil
Ressources
MODULE DATA
Acquisition et Chargement de Données
Lecture de fichiers courants
Comment lire un fichier CSV en Python avec Pandas | Tuto complet
Lire un fichier JSON en Python
Lire un fichier Excel en Python
Lire un fichier Parquet en Python
Lire un fichier XML en Python
Connexion à une base de données
Connexion à une base SQL
Connexion à une base NoSQL
Connexion via ORM et bibliothèques Python
Sécurisation de la connexion
Web Scraping
Scraper une page web avec BeautifulSoup
Scraper une page web avec Scrapy
Récupérer des données avec Selenium
Gérer les requêtes HTTP avec Requests
Gérer les headers et user-agents pour éviter les blocages
Extraire des données d’une API avec JSON
APIs et Services Web
Consommer une API REST
Consommer une API GraphQL
Acquisition de donnée en temps réel
Utilisation de Kafka pour le streaming de données
Utilisation de MQTT pour l’IoT et les flux de données
Utilisation des WebSockets pour la communication en temps réel
Exploration et Nettoyage des Données
Affichage des premières et dernières lignes d’un Dataframe
Afficher les premières lignes d’un DataFrame
Afficher les dernières lignes d’un DataFrame
Détection et traitement des valeurs manquantes
Détecter les valeurs manquantes
Compter les valeurs manquantes (isnull().sum())
Supprimer les valeurs manquantes
Remplacer les valeurs manquantes
Imputation avancée des valeurs manquantes (SimpleImputer de Scikit-learn)
Suppression des doublons
Détecter les doublons (duplicated())
Supprimer les doublons
Gestion des valeurs aberrantes
Détection des valeurs aberrantes avec l’IQR (Interquartile Range)
Détection des valeurs aberrantes avec le Z-score
Winsorization des données
Conversion des types de données
Conversion en types numériques
Conversion en chaîne de caractères
Conversion en dates
Conversion en catégories
Transformation et Préparation des Données
Filtrage des données
Filtrer avec query()
Filtrer avec loc[ ] (par étiquette)
Filtrer avec iloc[ ] (par position)
Tri et classement
Trier les valeurs d’une colonne (sort_values(by=’colonne’))
Trier les valeurs par ordre décroissant (sort_values(by=’colonne’, ascending=False))
Trier par plusieurs colonnes (sort_values(by=[‘colonne1’, ‘colonne2’]))
Gérer les valeurs manquantes lors du tri (sort_values(na_position=’first’/’last’))
Trier un DataFrame en fonction de l’index
Regroupement et agrégation
Regrouper les données par une colonne (groupby(‘colonne’))
Appliquer une fonction d’agrégation sur un groupe
Regrouper par plusieurs colonnes
Accéder aux groupes individuellement
Transformer les données après regroupement
Créer un tableau croisé dynamique
Gérer les valeurs manquantes dans un pivot_table
Création de nouvelles colonnes
Créer une nouvelle colonne avec une opération simple
Appliquer une transformation avec apply() sur une colonne
Appliquer apply() sur plusieurs colonnes
Utiliser map() pour transformer une colonne
Utiliser lambda pour créer une nouvelle colonne
Créer une colonne conditionnelle avec np.where()
Créer une colonne conditionnelle avec apply() et lambda
Encodage des variables catégorielles
Encodage avec LabelEncoder
Encodage avec map() pour un mapping manuel
Encodage avec pd.Categorical().codes
Encodage One-Hot avec pd.get_dummies()
Encodage One-Hot avec OneHotEncoder
Encodage des variables ordinales avec OrdinalEncoder
Standardisation et normalisation
Différence entre standardisation et normalisation
Normalisation des données avec MinMaxScaler
Standardisation des données avec StandardScaler
Appliquer une transformation uniquement sur certaines colonnes
Inverser la transformation pour retrouver les valeurs originales
Standardisation et normalisation avec Pipeline
Utilisation de RobustScaler pour les données avec outliers
Feature Engineering
Gestion des valeurs inconnues avec handle_unknown dans OneHotEncoder
Extraction de l’année, du mois, du jour à partir d’une date
Extraction des caractéristiques textuelles
Création de variables binaires basées sur une condition
Utilisation de PolynomialFeatures pour générer des interactions
Discrétisation des valeurs continues
Encodage des variables temporelles (sinus et cosinus pour les cycles)
Feature Selection
Transformation de texte
Tokenization avec split()
Tokenization avec nltk.word_tokenize()
Tokenization avec spacy
Stemming avec nltk.PorterStemmer
Stemming avec nltk.SnowballStemmer
Lemmatization avec nltk.WordNetLemmatizer
Lemmatization avec spacy
Suppression des stopwords avec nltk
Vectorisation avec CountVectorizer (Bag of Words)
Vectorisation avec TfidfVectorizer (TF-IDF)
Fusion et Manipulation Avancée
Concaténation et fusion de datasets
Concaténation verticale de DataFrames
Concaténation horizontale de DataFrames
Fusion de DataFrames avec merge() sur une colonne commune
Fusion sur plusieurs colonnes avec merge()
Utilisation de join() pour fusionner sur l’index
Gérer les doublons après une fusion
Remplissage des valeurs manquantes après une fusion
Transposition et pivotement
Transposer un DataFrame (.T)
Passer d’un format large à un format long avec melt()
Utiliser pivot_table() pour l’agrégation des données
Réinitialiser l’index après un pivotement
Convertir plusieurs colonnes en une seule avec melt()
Gérer les valeurs manquantes après un pivotement
Manipulation des séries temporelles
Conversion en format datetime
Indexer un DataFrame par une colonne de dates
Décalage des valeurs avec shift()
Appliquer une fenêtre glissante avec rolling()
Fenêtre glissante avec des fonctions d’agrégation
Fenêtre glissante avec une taille variable
Appliquer une fonction personnalisée sur une fenêtre glissante avec apply()
Utiliser des méthodes de resampling pour regrouper les données temporelles
Gérer les valeurs manquantes avec des séries temporelles
Regroupement multi-index
Création d’un MultiIndex avec pd.MultiIndex.from_tuples()
Définir un MultiIndex sur un DataFrame avec set_index()
Accéder aux éléments d’un MultiIndex avec loc[]
Utilisation de stack() pour empiler les colonnes en lignes
Utilisation de unstack() pour transformer un index en colonnes
Fusionner et regrouper des DataFrames avec MultiIndex
Manipulation des niveaux d’un MultiIndex
Réinitialiser un MultiIndex avec reset_index()
Accéder à un niveau spécifique d’un MultiIndex avec xs
Utilisation des sort_index() pour trier un DataFrame avec MultiIndex
Gestion des données déséquilibrées
Introduction à l’imbalance des classes
Sous-échantillonnage (Undersampling) des classes majoritaires avec RandomUnderSampler de imblearn
Sur-échantillonnage (Oversampling) des classes minoritaires avec RandomOverSampler de imblearn
Sur-échantillonnage avec SMOTE
Sous-échantillonnage avec NearMiss
Équilibrage des classes avec ADASYN
Analyse des effets des méthodes d’échantillonnage sur la performance du modèle
Équilibrage des classes en utilisant des poids
Évaluation des modèles avec des données déséquilibrées
Visualisation des classes avant et après échantillonnage
Sauvegarde et Exportation des Données
Export en CSV, JSON, Excel, Parquet
Exporter un DataFrame en CSV avec to_csv()
Exporter un DataFrame en CSV sans index avec to_csv()
Exporter un DataFrame en JSON avec to_json()
Exporter un DataFrame en JSON avec différentes options (orient et lines)
Exporter un DataFrame en Excel avec to_excel()
Exporter un DataFrame en Excel avec plusieurs feuilles
Exporter un DataFrame en Parquet avec to_parquet()
Exporter un DataFrame en Parquet avec compression
Exporter un DataFrame avec des options supplémentaires
Exporter un DataFrame en format HTML avec to_html()
Stockage en base de données
Création d’une connexion à une base de données avec SQLAlchemy
Configurer une session avec SQLAlchemy pour des transactions
Utiliser les transactions avec SQLAlchemy pour garantir la cohérence des données
Exécuter des requêtes SQL via SQLAlchemy
Utiliser des types de données personnalisés dans SQLAlchemy pour les colonnes
Stocker un DataFrame dans une base de données SQL avec to_sql()
Charger des données depuis une base de données SQL avec read_sql()
Stocker un DataFrame dans une table existante avec to_sql() et if_exists=’append’
Utiliser if_exists pour contrôler le comportement de la table
Enregistrement d’objets Python
Introduction à la sérialisation d’objets Python
Comparaison entre pickle et joblib
Enregistrer un objet avec pickle
Charger un objet avec pickle
Sérialisation d’objets personnalisés avec pickle
Protéger contre l’exécution de code malveillant lors de l’utilisation de pickle
Enregistrement et chargement de modèles de machine learning avec joblib
Charger un objet avec joblib
Utiliser joblib pour la sérialisation efficace de grands objets
Utilisation de joblib pour la compression de fichiers lors de l’enregistrement
MODULE ANALYSE
Introduction à l’analyse de données
Définition et objectifs de l’analyse
Types d’analyses (descriptive, exploratoire, inférentielle, prédictive, prescriptive)
Analyse descriptive
Introduction à l’analyse descriptive
Statistiques de base
Visualisation des données descriptives
Mesures de forme de distribution
Techniques de summarisation avancée
Analyse exploratoire des données (EDA)
Introduction à l’EDA
Préparation des données pour l’EDA
Visualisation des données
Identification des patterns dans les données
Détection et gestion des outliers
Techniques d’agrégation et de regroupement
Transformation des variables
Analyse inférentielle
Introduction à l’analyse inférentielle
Tests d’hypothèses
Tests de comparaison de moyennes
Tests de variance
Intervalles de confiance et p-values
Test de corrélation et régression
Analyse de séries temporelles
Introduction aux séries temporelles
Composantes d’une série temporelle
Méthodes de décomposition
Modélisation des séries temporelles
Évaluation des modèles
Bonnes pratiques et pièges à éviter
Biais courants en analyse
Interprétation erronée des résultats
Communication efficace des résultats
Documentation et reproductibilité
MODULE VISUALISATION
Introduction à la Visualisation de Donnée
Visualisation avec Matplotlib
Visualisation avec Seaborn
Visualisation Interactive avec Plotly
Storytelling et DataViz pour la Communication
Visualisation de Données Géospatiales
Automatisation et Personnalisation des Visualisations
MODULE IA
Fondamentaux de l’Intelligence Artificielle
Machine Learning
Deep Learning
IA Générative
Évaluation et Éthique
Déploiement et MLOps
Cheat Sheets
Articles
Forum
Exercices
Close Button
Connexion
Inscription
Segmentation basée sur des règles
⚠️ Ce contenu est réservé aux membres Premium
Abonnez-vous pour débloquer cette page et accéder à tous nos contenus exclusifs.
Souscrire maintenant