Analyse de données avec Python
Master IAE
S1
2024/2025
TP2
Exercice 1
Objectifs :
o Explorer un jeu de données et identifier les anomalies.
o Nettoyer les données en traitant les valeurs manquantes et les doublons.
o Prétraiter les données pour qu’elles soient prêtes à être utilisées dans un modèle
machine learning.
Bibliothèques à utiliser :
o NumPy
o Pandas
o Matplotlib
o Seaborn
Jeu de données :
Utilisez le jeu de données public Titanic, disponible via la bibliothèque Seaborn.
Partie 1 : Exploration des données
1. Chargement des données :
o Chargez le jeu de données et affichez les premières lignes.
o Décrivez la structure des données, notamment le nombre de lignes, colonnes,
et le type des variables.
o Identifiez les colonnes contenant des valeurs manquantes ainsi que le nombre
de valeurs manquantes.
2. Statistiques descriptives :
o Calculez des statistiques descriptives pour les variables numériques.
o Pour les variables catégorielles, affichez la distribution des valeurs possibles.
3. Visualisation :
o Utilisez des visualisations pour analyser la répartition des valeurs dans les
colonnes clés (âge, sexe, classe, tarif, etc.).
o Créez des histogrammes pour les variables numériques et des graphiques en
barres pour les variables catégorielles.
Code d'aide pour le chargement du jeu de données Titanic :
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
# Charger le jeu de données Titanic
data = sns.load_dataset('titanic')
Partie 2 : Nettoyage des données
1. Gestion des valeurs manquantes :
o Remplacez les valeurs manquantes dans la colonne age par une mesure
statistique appropriée.
o Supprimez les lignes avec des valeurs manquantes dans les colonnes qui ne
peuvent pas être imputées.
2. Gestion des doublons :
Vérifiez s'il existe des doublons dans les données et supprimez-les si nécessaire.
3. Suppression des colonnes inutiles :
Supprimez les colonnes non pertinentes pour l'analyse, telles que deck, en
justifiant votre choix.
Code d'aide minimal :
# Remplacer les valeurs manquantes dans 'age' par une mesure statistique de votre choix
# Supprimer les lignes avec des valeurs manquantes dans 'embarked'
# Suppression de doublons si nécessaire
Partie 3 : Prétraitement des données
1. Encodage des variables catégorielles :
Encodez les variables catégorielles (ex. : sexe, embarquement) pour les
transformer en variables numériques.
2. Normalisation des variables :
Normalisez les variables continues (age, fare) en utilisant une technique de
votre choix (min-max, z-score, etc.).
3. Gestion des outliers :
Identifiez les outliers dans la colonne fare en utilisant une méthode de détection
des outliers (ex. : écart interquartile, z-score) et traitez-les.
Code d'aide minimal :
# Encoder les variables catégorielles
# Normaliser les variables continues
# Détecter et traiter les outliers dans la colonne 'fare'
Exercice 2
Objectifs :
o Approfondir la maîtrise de Pandas en manipulant un dataset
o Réaliser des analyses avancées et des transformations complexes
o Extraire des insights en effectuant des agrégations et des regroupements
Partie 1 : Chargement et Exploration des Données
1. Charger le jeu de données 'ex2_donnees_fictives_complexes' et l'afficher.
2. Lister les informations générales :
o Nombre de lignes et colonnes
o Types des variables
o Valeurs manquantes
o Résumé statistique des données numériques et catégoriques
3. Analyser la distribution des variables numériques et identifier d'éventuelles
anomalies.
Partie 2 : Nettoyage et Préparation des Données
1. Supprimer les valeurs manquantes en choisissant la meilleure stratégie
(suppression ou imputation).
2. Identifier et supprimer les doublons s’il y en a.
3. Détecter et corriger les valeurs aberrantes en utilisant des méthodes statistiques
adaptées.
4. Vérifier et uniformiser les formats des variables catégoriques (ex. : "Paris", "paris",
"PARIS" doivent être homogénéisés).
5. Créer de nouvelles colonnes pertinentes à partir des données existantes.
Partie 3 : Manipulation et Transformation des Données
1. Effectuer un filtrage avancé pour extraire un sous-ensemble de données selon
plusieurs conditions combinées.
2. Trier les données selon différents critères.
3. Regrouper et agréger les données pour obtenir des statistiques avancées sur
certaines catégories.
4. Appliquer une transformation conditionnelle sur une colonne en fonction d’une
autre.
5. Effectuer une jointure avec un second jeu de données contenant des informations
complémentaires.
Partie 4 : Analyse et Visualisation des Données
1. Calculer et analyser les corrélations entre les variables numériques.
2. Créer des histogrammes et boxplots pour visualiser les distributions.
3. Générer des graphiques avancés pour observer les tendances et relations entre
variables.
4. Extraire des insights et interpréter les résultats obtenus.
Consignes Finales
À rendre : Un script Python bien structuré et documenté.
Interpréter les résultats et rédiger un court rapport expliquant les principales
observations et transformations effectuées.
Challenge Bonus : Trouver et appliquer une technique avancée (normalisation,
discrétisation, pivotement, etc.) pour améliorer l’analyse.