Analyse exploratoire des données en Python

Apprends à mener une analyse exploratoire complète d’un jeu de données dans un notebook Jupyter avec pandas et seaborn. Pars de questions claires, établis le profil des données et évalue leur qualité, puis décris la distribution et les valeurs aberrantes de chaque variable. Explore ensuite les relations à l’aide de nuages de points et de corrélations, compare des segments et des périodes avec les bons dénominateurs, puis transforme tes constats en résultats clairs et honnêtes dans un notebook que chacun peut réexécuter.

IntermédiaireUnité 8 sur 8 de la formation Formation : Python et pandas : NumPy, analyse et visualisation de données

Ce que tu vas apprendre

  1. Explique à quoi sert l’analyse exploratoire des données, transforme une demande générale en questions concrètes et prépare un notebook que chacun peut réexécuter du début à la fin.
    • Définir l’objectif et les questions d’une analyse exploratoire
      Décris le rôle de l’analyse exploratoire des données, suis ses étapes des questions aux résultats et formule des questions précises auxquelles les données peuvent répondre.
    • Organiser un notebook que chacun peut réexécuter
      Structure un notebook Jupyter pour qu’il s’exécute du début à la fin avec les mêmes résultats, grâce à des sections claires, des chemins relatifs, des versions consignées, des graines aléatoires fixes et des vérifications intégrées.
  2. Examine la taille, la structure et les types de variables d’un nouveau jeu de données, quantifie les données manquantes et les doublons, puis vérifie la validité et la cohérence des valeurs avant de te fier à une régularité.
    • Examiner la structure, la taille et les types des variables
      Utilise les méthodes d’inspection de pandas pour connaître la forme, les colonnes, les types et les clés d’un jeu de données, classe chaque variable en vue de l’analyse et repère les valeurs stockées avec un type incorrect.
    • Quantifier les valeurs manquantes et les doublons
      Compte les valeurs manquantes et leur proportion par colonne, trouve les codes cachant des valeurs manquantes, vérifie si leur absence suit une régularité et détecte les lignes et les clés en double.
    • Vérifier la validité et la cohérence des valeurs
      Vérifie les intervalles, les catégories, les relations entre colonnes, les unités et la couverture temporelle, et consigne chaque problème de qualité des données ainsi que chaque décision.
  3. Décris et représente graphiquement chaque variable quantitative et qualitative, reconnais les formes des distributions, puis repère les valeurs aberrantes et décide de leur traitement.
    • Décrire une variable quantitative par sa tendance centrale et sa dispersion
      Calcule et interprète les indicateurs de tendance centrale, de dispersion et de position dans pandas, et choisis des indicateurs robustes lorsque les données sont asymétriques ou contiennent des valeurs extrêmes.
    • Représenter et décrire la forme des distributions
      Trace des histogrammes, des courbes de densité, des boîtes à moustaches et des fonctions de répartition empiriques avec pandas et seaborn, choisis des classes et des échelles qui montrent la forme réelle, puis décris une distribution avec des mots et des nombres.
    • Décrire les variables qualitatives
      Construis des tableaux des effectifs et des fréquences et des diagrammes en barres pour les variables qualitatives, respecte l’ordre des catégories ordinales, traite les catégories rares et les libellés manquants, et indique le dénominateur de chaque pourcentage.
    • Repérer les valeurs aberrantes et décider de leur traitement
      Repère les valeurs inhabituelles avec la règle de l’écart interquartile, les scores z et les scores robustes, recherche leur cause, puis choisis et documente un traitement justifié.
  4. Représente les relations entre variables quantitatives avec des nuages de points, mesure leur force à l’aide de coefficients de corrélation et interprète ce qu’une liaison peut montrer et ce qu’elle ne peut pas montrer.
    • Représenter et décrire les relations entre deux variables quantitatives
      Trace des nuages de points et des matrices de nuages de points qui restent lisibles avec de nombreux points, ajoute une troisième variable par la couleur ou des panneaux, et décris le sens, la forme, la force et les points inhabituels de la relation.
    • Mesurer la liaison à l’aide de coefficients de corrélation
      Calcule et interprète les corrélations de Pearson, de Spearman et de Kendall dans pandas, lis une matrice de corrélation et une carte de chaleur, et reconnais ce qu’un coefficient ne montre pas.
    • Interpréter les relations sans tirer de conclusions excessives
      Explique pourquoi une liaison statistique ne prouve pas une causalité, reconnais les facteurs de confusion, le paradoxe de Simpson, les tendances temporelles, les plages restreintes, l’agrégation et les résultats dus au hasard, puis formule les conclusions en conséquence.
  5. Compare les distributions, les proportions et les taux entre groupes et périodes, en tenant compte des effectifs et en utilisant les bons dénominateurs, et reconnais quand une différence repose sur trop peu de données.
    • Comparer une variable quantitative entre groupes
      Décris une variable quantitative par groupe avec les effectifs et les indicateurs de tendance centrale et de dispersion, trace les distributions des groupes côte à côte et exprime les écarts en termes absolus et relatifs.
    • Comparer les proportions des catégories et les taux entre segments
      Construis des tableaux de contingence avec des pourcentages en ligne ou en colonne, compare des taux avec le bon dénominateur et distingue les points de pourcentage des variations en pourcentage.
    • Comparer les segments au fil du temps
      Agrège les données par période et par segment, évite les pièges des périodes incomplètes ou de durée inégale, distingue la saisonnalité des tendances et examine les lacunes et les changements brusques.
  6. Transforme l’exploration en résultats clairs et étayés, dont les limites sont exposées honnêtement, et partage l’analyse sous forme d’un notebook ou d’un rapport soigné que d’autres peuvent réexécuter et vérifier.
    • Transformer les constats en résultats clairs et étayés
      Rédige des résultats qui répondent aux questions avec des éléments probants, leur ampleur et leur périmètre, choisis et légende des graphiques qui rendent chaque résultat visible, puis indique les limites et les prochaines étapes.
    • Partager une analyse reproductible
      Prépare un notebook soigné et réexécutable, calcule chaque nombre présenté dans le code, exporte le notebook sous forme de rapport, enregistre les figures et les tableaux, consigne leur provenance et protège les données personnelles.

Analyse exploratoire des données en Python : cours

6 chapitres

1

Planifier une analyse exploratoire dans un notebook

Des questions claires rendent une analyse exploratoire utile, et un notebook fiable permet d’en vérifier les résultats. Commence par relier la demande à une décision, identifier la population et comprendre ce que représente une ligne. Organise ensuite le code, les paramètres et les vérifications pour qu’une nouvelle session puisse reproduire le travail. Ces habitudes donnent un objectif et un point de départ fiable aux graphiques et aux comparaisons qui suivent.

1.1 Des questions qui donnent un objectif à l’exploration

L’analyse exploratoire des données utilise des indicateurs et des graphiques pour découvrir ce que contient un jeu de données. Tu recherches les problèmes de qualité, les régularités et les surprises, puis tu t’en sers pour formuler de meilleures questions. John Tukey a développé et promu cette approche, notamment dans son livre de 1977 Exploratory Data Analysis.

Partir d’une décision

Une demande comme « Comment se passent nos livraisons ? » est trop générale pour guider le premier calcul. Demande-toi quelle décision l’analyse éclairera, puis précise les variables et les comparaisons importantes. Parmi les questions utiles : « Quelle est la durée typique d’une livraison et dans quelle mesure varie-t-elle ? », « Quelle proportion de commandes prend plus de 45 minutes ? », « Les durées diffèrent-elles selon la ville ou l’heure ? » et « La médiane mensuelle a-t-elle changé depuis janvier ? ». Chacune oriente vers un indicateur, un graphique ou une comparaison.

Avant de calculer, établis l’origine des données, leur mode de collecte, leur période et leur population, ainsi que le sens et l’unité de chaque colonne. Une hausse du nombre de champs remplis peut refléter une modification du formulaire qui a rendu un champ obligatoire. Ce contexte change l’explication de la régularité observée.

Comprendre ce que représente une ligne

L’unité d’observation, aussi appelée granularité, est ce que représente une ligne. Il peut s’agir d’une commande, d’un article d’une commande, d’un client ou d’un magasin un jour donné. Une table de 12 000 lignes de commande et de 4 000 identifiants de commande distincts compte en moyenne 3 lignes par commande. Son nombre de lignes décrit les articles : une question portant sur les commandes nécessite donc de compter les commandes. Dans cette table, les identifiants de commande répétés sont attendus ; ils constitueraient un problème de qualité dans une table censée contenir une ligne par commande.

Suivre une boucle

Une démarche utile est la suivante :

  1. Énoncer les questions et la décision qu’elles éclairent.
  2. Charger les données et confirmer ce que représente une ligne.
  3. Établir le profil de la structure, des types et de la qualité.
  4. Examiner séparément les variables importantes.
  5. Explorer les relations entre variables.
  6. Comparer les segments et les périodes.
  7. Consigner les résultats, les limites et les prochaines questions.

Ces étapes forment une boucle. Une relation surprenante peut te conduire à revenir à la source pour vérifier les unités ou les valeurs manquantes. De nouvelles données peuvent modifier le profil et rouvrir des questions antérieures. Partir de questions garde l’analyse ciblée ; rester ouvert aux surprises préserve son caractère exploratoire. Tracer toutes les paires possibles sans objectif produit généralement une longue collection de graphiques avec peu de choses à expliquer.

Distinguer une piste d’une confirmation

L’exploration produit des hypothèses. L’analyse confirmatoire vérifie une hypothèse formulée à l’avance, idéalement avec des données qui n’ont pas révélé la régularité. Examiner de nombreux graphiques rend plus probables les régularités dues au hasard : un résultat exploratoire frappant doit donc être étudié davantage avant d’étayer une affirmation générale. L’analyse exploratoire aide à préparer ce travail en montrant les variables utilisables, les distributions asymétriques et les relations prometteuses.

La couverture des données détermine aussi la portée d’un résultat. Les avis sur les produits proviennent de personnes qui ont choisi d’en écrire. Leurs évaluations décrivent ces répondants ; étendre le résultat à tous les clients exige des éléments sur les différences entre les répondants et les autres clients.

Points clés

  • Commence par une décision et des questions concrètes sur les variables, les populations et les comparaisons.
  • Confirme ce que représente une ligne avant d’interpréter les effectifs ou les clés répétées.
  • Utilise les étapes comme une boucle : les surprises peuvent révéler des problèmes de qualité ou de nouvelles questions.
  • L’exploration produit des hypothèses ; la confirmation vérifie des hypothèses formulées à l’avance.
  • Le processus de collecte et la population limitent la portée des résultats.

1.2 Un notebook qui s’exécute du début à la fin

Un notebook Jupyter réunit du code, des sorties et des explications Markdown. Son noyau est le processus Python qui conserve les variables en mémoire. Il mémorise l’ordre d’exécution des cellules, qui peut différer de l’ordre visible sur la page.

Supprimer l’état caché

Supposons que tu exécutes une cellule qui crée clean, que tu la supprimes, puis que tu continues à utiliser clean plus bas. La session actuelle fonctionne toujours parce que la variable reste en mémoire. Une nouvelle session échoue parce que le notebook ne contient plus sa définition. Modifier une cellule au début après avoir exécuté des calculs plus bas peut aussi laisser d’anciennes sorties à côté du nouveau code.

Les compteurs d’exécution comme [7] aident à repérer les exécutions dans le désordre. Une vérification pratique est plus complète : dans JupyterLab, choisis Kernel → Restart Kernel and Run All Cells. Vérifie que tout le notebook s’exécute et que ses nombres correspondent aux sorties que tu souhaites partager.

Organiser clairement les dépendances

Commence par un titre, l’objectif et les questions. Ajoute ensuite les importations et une cellule de paramètres, puis des sections pour le chargement, les contrôles de qualité, les distributions, les relations, les comparaisons et les résultats. Par exemple :

from pathlib import Path
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

DATA = Path("data/raw/orders.csv")
LATE_MINUTES = 45
SEED = 42

df = pd.read_csv(DATA)

Un chemin relatif fonctionne dans la structure du projet partagé. Un chemin lié au bureau d’une personne cesse de fonctionner lorsque le projet est déplacé. Indique le répertoire de travail utilisé pour exécuter le notebook afin que le chemin relatif soit résolu correctement. Préserve les fichiers bruts et enregistre les données traitées séparément. Effectue les modifications dans le code : une modification manuelle dans un tableur est invisible lors de la prochaine réexécution.

Consigner l’environnement et les choix aléatoires

Enregistre les versions des paquets dans un fichier d’environnement, par exemple avec la sortie de pip freeze > requirements.txt, et affiche les versions importantes dans le notebook avec print(pd.__version__). Le comportement change selon les versions : pandas 3 attribue au texte le type de données dédié str, et un DataFrame contenant du texte nécessite une sélection explicite des colonnes quantitatives pour calculer les corrélations.

Un graphique fondé sur un échantillon doit montrer les mêmes observations à chaque réexécution. Utilise df.sample(n=1000, random_state=42) lorsqu’au moins 1 000 lignes sont disponibles, ou crée un générateur NumPy avec rng = np.random.default_rng(42). Consigne la graine avec les autres paramètres. Une graine contrôle les choix aléatoires ; reproduire l’ensemble des sorties nécessite aussi les mêmes données d’entrée et logiciels.

Rendre les hypothèses vérifiables à l’exécution

Transforme les attentes importantes en vérifications :

assert df["order_id"].is_unique
assert df["minutes"].ge(0).all()

La première exige un identifiant de commande unique par ligne. La seconde exige que chaque durée soit positive ou nulle et présente pour les données ordinaires à virgule flottante. Si les durées manquantes sont autorisées, définis une vérification distincte de leur absence et applique la règle d’intervalle uniquement aux durées enregistrées. Une assertion qui échoue arrête l’exécution dès que les données d’entrée ne respectent plus les conditions attendues.

Place les procédures répétées dans des fonctions pour qu’une seule correction mette à jour tous leurs usages. Place le code et les notebooks sous gestion de versions. Les sorties des notebooks sont stockées dans leur JSON, ce qui peut rendre les modifications difficiles à comparer ; effacer les sorties avant un commit ou associer le notebook à un script texte avec Jupytext peut aider.

Points clés

  • Le noyau conserve les variables issues de l’historique d’exécution, y compris celles des cellules qui ne sont plus visibles.
  • Redémarre le noyau et exécute chaque cellule pour révéler les dépendances cachées et les sorties obsolètes.
  • Regroupe les importations et les paramètres, utilise des chemins relatifs et préserve les données d’entrée brutes.
  • Consigne les versions des paquets et fixe la graine de chaque étape aléatoire.
  • Utilise des assertions pour vérifier les conditions que doit respecter un nouveau fichier d’entrée.
  • Effectue chaque modification des données dans le code pour qu’une autre exécution puisse la reproduire.
2

Établir le profil d’un jeu de données et évaluer sa qualité

Un jeu de données peut sembler bien organisé tout en cachant des enregistrements répétés, des codes de valeurs manquantes ou des unités incompatibles. Établis le profil de sa structure et du sens de ses données, quantifie les lacunes et les doublons, puis applique des règles qui reflètent la façon dont les données ont été recueillies. L’objectif est de comprendre quelles observations étayent chaque résultat et de laisser une trace visible des décisions qui modifient les données analysées.

2.1 Le premier examen d’un jeu de données

Un premier examen permet de connaître la taille de la table, ce que représentent ses colonnes et si leurs types de stockage correspondent à leur sens. Ce profil t’aide à choisir des indicateurs pertinents avant de te fier au résultat d’une commande pratique.

Examiner la structure sous plusieurs angles

Utilise df.shape pour obtenir les nombres de lignes et de colonnes, df.head() et df.tail() pour les extrémités du fichier, et df.sample(5, random_state=0) pour un échantillon reproductible lorsqu’il existe au moins cinq lignes. Les premières lignes peuvent toutes correspondre à la date la plus ancienne ou au même magasin. Exécute df.info() pour examiner les noms des colonnes, les nombres de valeurs non manquantes, les types de données et l’occupation mémoire. Utilise df.nunique() pour compter les valeurs distinctes enregistrées dans chaque colonne.

Distinguer le sens du stockage
Type d’analyseExempleTraitement utile
Quantitative continueDistance en kmTendance centrale, dispersion et distribution
Quantitative discrèteArticles par commandeEffectifs et classes centrées sur les entiers
Catégorie nominaleVilleEffectifs et proportions
Catégorie ordinaleFaible, moyen, élevéEffectifs dans un ordre pertinent
Date et heureHorodatage de commandeCouverture et comparaisons par période
IdentifiantIdentifiant de clientUnicité et liens entre enregistrements
Texte libreCommentaire écritExaminer le texte et sa qualité

Un type de données entier ne fait pas de chaque colonne une quantité. Les codes de région et les identifiants de clients sont stockés sous forme numérique, mais leur moyenne arithmétique n’est pas utile. Une note de 1 à 5 présente un petit ensemble de réponses ordonnées et gagne souvent à être représentée comme une catégorie.

pandas utilise couramment int64, float64, bool, datetime64, category et, depuis pandas 3, str. Les versions antérieures de pandas utilisaient souvent object pour le texte. Les données entières ordinaires peuvent devenir float64 en présence de valeurs manquantes, car NaN est un marqueur à virgule flottante ; le type nullable Int64 accepte des entiers avec des valeurs manquantes.

Vérifier les conversions et les clés

Une chaîne qui ressemble à un nombre peut cacher des séparateurs, des unités ou des codes de valeurs manquantes. Pour une Series contenant « 1,234 », « 950 », « n/a » et « 1,010 » :

parsed = pd.to_numeric(
    s.str.replace(",", ""), errors="coerce"
)

Les valeurs deviennent 1234.0, 950.0, NaN et 1010.0. Compare les nombres de valeurs manquantes avant et après la conversion et examine les entrées devenues manquantes. La coercition transforme aussi une valeur non traitée comme « 12 kg » en NaN : une exécution réussie ne suffit donc pas à montrer que la conversion a préservé les données.

Lis comme texte les codes dont les zéros initiaux ont un sens, par exemple avec pd.read_csv(path, dtype={"postal_code": "str"}). Retrouver ensuite un zéro perdu exige une information que la représentation entière a supprimée.

Identifie la clé attendue pour les lignes. df["order_id"].is_unique vérifie une clé à une colonne ; df.duplicated(subset=["store_id", "date"]).sum() vérifie les combinaisons magasin-date répétées. Relie les nombres de clés à ce que représente une ligne. Une colonne à valeur unique ne peut pas expliquer les différences au sein de ce jeu de données ; des milliers de catégories censées représenter des villes peuvent signaler des libellés incohérents.

Complète un dictionnaire de données au fil de ton examen : consigne le sens, le type d’analyse, l’unité, les valeurs autorisées et les problèmes connus de chaque colonne. Ces informations fournissent les règles des prochaines vérifications de qualité.

Points clés

  • Examine la taille, des échantillons de lignes, les nombres de valeurs non manquantes, les types de données et les nombres de valeurs distinctes.
  • Choisis les méthodes d’analyse d’après le sens d’une variable, notamment son ordre et ses unités.
  • Vérifie les entrées devenues manquantes après toute conversion qui transforme les échecs d’analyse en valeurs manquantes.
  • Vérifie que la clé attendue correspond à l’unité d’observation de la table.

2.2 Valeurs manquantes et enregistrements répétés

Les valeurs manquantes modifient les observations qui contribuent à un résultat. Les enregistrements en double peuvent donner plus de poids à certaines observations. Quantifie les deux avant de choisir un traitement et rends ta décision visible dans l’analyse.

Quantifier les valeurs manquantes et leur répartition

pandas utilise NaN, NaT pour les dates et heures manquantes et <NA> pour les types nullables. Compte et classe les valeurs manquantes avec :

missing_count = df.isna().sum()
missing_share = df.isna().mean().sort_values(ascending=False)
rows_with_gaps = df.isna().any(axis=1).sum()

Une moyenne de valeurs booléennes donne une proportion, car True compte pour 1 et False pour 0. Avec 96 âges manquants parmi 1 200 lignes, la proportion de valeurs manquantes est de 8 %. Les lignes comportant au moins une valeur manquante peuvent être bien plus nombreuses que les entrées manquantes d’une seule colonne ; c’est le nombre de lignes qu’une application systématique de df.dropna() supprimerait.

Certaines valeurs manquantes sont cachées derrière des valeurs ordinaires. L’analyse CSV par défaut reconnaît de nombreux marqueurs de valeurs manquantes, champs vides ou texte, mais des codes comme -999, « unknown » et « ? » peuvent subsister. Examine les fréquences et les valeurs extrêmes, consulte le dictionnaire de données et déclare les marqueurs supplémentaires avec na_values. Le zéro exige du contexte : il peut signifier qu’il n’y a aucun retour ou être un code de valeur manquante non documenté.

Vérifie si les valeurs manquantes se concentrent dans un segment :

age_gaps = df["customer_age"].isna()
age_gaps.groupby(df["city"]).mean()

Si une ville présente 40 % d’âges manquants et les autres environ 2 %, une analyse limitée aux lignes complètes sous-représentera cette ville. Les termes MCAR, MAR et MNAR décrivent différents mécanismes : l’absence de données n’est liée ni aux valeurs observées ni aux valeurs manquantes ; elle dépend uniquement de variables observées ; ou elle dépend de la valeur manquante elle-même. Les répondants aux revenus élevés qui ne répondent pas à une question sur leurs revenus illustrent le mécanisme MNAR. L’analyse exploratoire peut détecter des liens avec les variables enregistrées ; déterminer le mécanisme complet exige davantage d’éléments sur la collecte.

Préciser le dénominateur

Pour 6 paiements par carte, 2 paiements en espèces et 2 valeurs manquantes, value_counts(normalize=True) indique 75 % de paiements par carte et 25 % en espèces parmi les 8 paiements enregistrés. L’ajout de dropna=False donne 60 % de paiements par carte, 20 % en espèces et 20 % de valeurs manquantes parmi les 10 lignes. Chaque tableau répond à une question différente. Indique la population sur laquelle repose chaque proportion.

Examiner les lignes et les clés en double

df.duplicated().sum() compte les copies après la première occurrence de chaque ligne complète. Une vérification fondée sur les clés peut trouver des enregistrements contradictoires qui ne sont pas identiques :

repeated = df["order_id"].duplicated(keep=False)
df.loc[repeated].sort_values("order_id")

Considère les identifiants 101, 102, 102, 103, 104, 104 avec les montants 20, 35, 35, 12, 50, 55. Il y a 1 ligne entièrement en double, 2 occurrences de clés répétées après la première et 4 lignes associées à des clés répétées. Les deux enregistrements 104 indiquent des montants différents : supprimer une copie sans examen pourrait donc éliminer la valeur correcte.

Pour chaque problème, consigne le nombre de cas, la cause probable, le traitement et les lignes concernées. Supprimer toutes les lignes incomplètes peut retirer un sous-ensemble biaisé ; remplacer les valeurs manquantes par la moyenne masque leur répartition et réduit la dispersion apparente. Choisis un traitement adapté à la question et au processus de collecte, puis garde la possibilité de quantifier les valeurs initialement manquantes.

Points clés

  • Compte les valeurs manquantes par colonne et les lignes qui en contiennent avant de choisir un traitement.
  • Vérifie les valeurs sentinelles et compare les valeurs manquantes entre segments pertinents.
  • Les mécanismes d’absence de données décrivent pourquoi des valeurs manquent ; les régularités observées ne suffisent pas à identifier le mécanisme complet.
  • Les proportions calculées par défaut excluent les valeurs manquantes : indique donc le dénominateur.
  • Les lignes entièrement en double et les clés répétées associées à des enregistrements contradictoires demandent des examens différents.
  • Consigne les traitements, car supprimer ou remplacer des valeurs modifie les données analysées.

2.3 Des règles pour révéler les données invalides ou incohérentes

Une valeur est valide lorsqu’elle appartient à l’intervalle ou à l’ensemble autorisé pour sa colonne. Les enregistrements sont cohérents lorsque leurs valeurs concordent entre colonnes, lignes et sources. Construis les vérifications à partir du dictionnaire de données et de ta connaissance du processus qui a produit les données.

Vérifier les intervalles sans y mêler les valeurs manquantes

Commence par les minima et les maxima, puis vérifie des bornes explicites. Pour compter les âges enregistrés hors de l’intervalle de 0 à 120 :

invalid_age = df["age"].notna() & ~df["age"].between(0, 120)
invalid_age.sum()

between renvoie False pour les valeurs manquantes. Sa négation seule compterait les âges manquants comme invalides ; la vérification de présence distingue les deux problèmes. D’autres règles peuvent imposer des quantités positives ou nulles, des pourcentages au plus égaux à 100 ou des dates d’extraction qui ne précèdent pas les événements contenus dans les données. L’intervalle autorisé dépend du sens de la colonne.

Harmoniser les libellés et vérifier les colonnes

« Lyon », « lyon » et « Lyon » sont trois chaînes, même lorsqu’elles désignent la même ville. Après suppression justifiée des espaces et conversion de la casse, les effectifs de 410, 22 et 5 deviennent 437 pour « lyon » :

city_clean = df["city"].str.strip().str.lower()

Compare les effectifs des catégories avant et après. Les variantes orthographiques et les synonymes demandent une correspondance explicite ; changer uniquement la casse ne peut pas réunir « UK » et « United Kingdom ». Conserve la règle utilisée pour qu’une réexécution reproduise la même décision.

Les vérifications entre colonnes recherchent les contradictions. df.query("delivered_at < ordered_at") trouve les livraisons horodatées avant leur commande. D’autres vérifications portent sur la somme des montants des articles par rapport au total, la concordance entre l’âge et la date de naissance ou la présence inattendue d’une durée de livraison pour une commande annulée. Ces règles supposent des unités, des conventions horaires et des définitions identiques entre les colonnes.

Rechercher les changements d’échelle et de couverture

Le mélange de kilogrammes et de grammes peut créer des groupes dont les valeurs diffèrent d’un facteur d’environ 1 000. Une proportion enregistrée en partie sur une échelle de 0 à 1 et en partie sur une échelle de 0 à 100 crée aussi une distribution trompeuse. Vérifie la source avant de convertir : deux groupes peuvent aussi représenter deux populations réelles. Un graphique indique où enquêter ; la source établit les unités applicables.

Examine les dates les plus ancienne et la plus récente ainsi que les effectifs par mois. Un mois manquant peut correspondre à une lacune d’extraction, tandis qu’un dernier mois incomplet contient naturellement moins d’enregistrements. Une hausse brusque peut refléter un nouveau système d’enregistrement. Consigne la couverture réellement disponible avant de présenter une régularité temporelle.

Tenir un journal de qualité

Utilise un petit tableau indiquant le problème, la vérification, le nombre de lignes concernées, les éléments constatés et l’action. Par exemple, une durée négative peut être repérée par une règle imposant une durée positive ou nulle, examinée à partir des horodatages et corrigée uniquement lorsque la source établit sa vraie valeur. Les conditions importantes peuvent devenir des assertions qui arrêteront une exécution ultérieure.

Une livraison de 120 minutes est inhabituelle mais possible. Une durée de −5 minutes est impossible avec la même définition de la durée. La première nécessite un examen comme valeur aberrante ; la seconde, un examen comme erreur.

Points clés

  • Utilise les règles métier pour vérifier les intervalles valides, les ensembles de catégories et la concordance entre colonnes.
  • Compte les valeurs manquantes séparément des valeurs enregistrées hors de l’intervalle autorisé.
  • Vérifie les variantes de libellés, les mélanges d’unités et la couverture temporelle avant d’interpréter des régularités.
  • Tiens un journal de qualité et transforme les conditions importantes sur les données d’entrée en assertions.
  • Examine les valeurs inhabituelles ; distingue une valeur extrême possible d’une valeur impossible.
3

Décrire la distribution de chaque variable

Un seul indicateur de tendance centrale peut masquer une longue queue, deux groupes distincts ou une borne d’enregistrement. Décris chaque variable importante à l’aide d’indicateurs et de graphiques adaptés à son sens. Pour les variables quantitatives, examine la tendance centrale, la dispersion, la forme et les valeurs inhabituelles ; pour les variables qualitatives, précise les libellés, l’ordre et les dénominateurs. Les règles de détection des valeurs aberrantes aident à repérer les enregistrements à examiner, tandis que le contexte détermine leur traitement.

3.1 Tendance centrale, dispersion et effet des valeurs extrêmes

Une distribution quantitative décrit les valeurs observées et leur fréquence. Sa tendance centrale indique où se situent les données, sa dispersion montre leur étalement et sa forme révèle ce que ces indicateurs ne montrent pas. Utilise un graphique en complément des nombres.

Choisir des indicateurs adaptés à la distribution

La moyenne est la somme divisée par l’effectif. La médiane est la valeur centrale des données ordonnées ou la moyenne des deux valeurs centrales lorsque l’effectif est pair. L’étendue est le maximum moins le minimum. L’écart interquartile est Q3 moins Q1 : c’est la distance entre le 75e et le 25e centile. L’écart-type mesure la dispersion autour de la moyenne dans les unités de la variable.

La méthode pandas s.std() calcule l’écart-type d’échantillon avec ddof=1, en divisant la somme des carrés des écarts par le nombre d’observations moins un. NumPy np.std(a) utilise par défaut ddof=0, qui divise par l’effectif. Cette différence compte particulièrement pour les petits échantillons : utilise donc des réglages correspondants pour comparer les résultats.

Lire les indicateurs avant de les interpréter
s = df["minutes"]
s.describe(percentiles=[0.1, 0.5, 0.9])

Le résultat comprend le nombre de valeurs non manquantes, la moyenne, l’écart-type, le minimum, les centiles demandés et le maximum. L’entrée à 50 % est la médiane. Sur un DataFrame, describe() traite par défaut les colonnes quantitatives et les colonnes de dates et heures ; les indicateurs des dates et heures comprennent leur moyenne et leurs centiles. describe(include="all") décrit aussi les autres colonnes. Les colonnes textuelles et catégorielles reçoivent count, unique, top et freq, où top est une valeur parmi les plus fréquentes et freq son effectif. Exclus les identifiants numériques des calculs arithmétiques.

Étudier une longue queue à droite

Considère les durées de livraison de 18, 22, 25, 25, 27, 29, 31, 34, 38, 41 et 95 minutes. Leur somme est de 385 et leur effectif de 11 : la moyenne est donc de 35,0 minutes. La sixième valeur ordonnée est 29, ce qui donne la médiane. pandas donne Q1 = 25, Q3 = 36, IQR = 11 et un écart-type d’échantillon d’environ 21,02 minutes.

Sans la livraison de 95 minutes, la moyenne est de 29,0, la médiane de 28 et l’écart-type d’environ 7,15. Une valeur déplace la moyenne de 6 minutes et triple approximativement l’écart-type ; la médiane change de 1 minute. C’est pourquoi la médiane et l’écart interquartile sont des indicateurs robustes utiles pour les données contenant des valeurs extrêmes. Une distribution à peu près symétrique sans valeurs extrêmes est souvent bien décrite par sa moyenne et son écart-type.

Décrire la queue et des positions utiles

Une asymétrie à droite présente une longue queue du côté des grandes valeurs ; une asymétrie à gauche présente une longue queue du côté des petites valeurs. La moyenne se situe généralement du côté de la longue queue par rapport à la médiane, mais vérifie la forme, car cette règle empirique admet des exceptions. s.skew() est positif pour une queue à droite et négatif pour une queue à gauche ; il vaut environ 2,71 pour ces durées de livraison.

s.quantile(0.9) donne ici 41 minutes, ce qui décrit utilement la partie supérieure de la distribution. Une livraison sur les 11 dépasse 45 minutes, soit environ 9,1 %. En présence de valeurs manquantes, calcule les proportions au-dessus d’un seuil parmi les valeurs enregistrées. Les quartiles des petits échantillons peuvent différer selon les programmes : pandas utilise par défaut une interpolation linéaire. Consigne la méthode lorsque les quartiles exacts sont importants.

Points clés

  • Utilise la tendance centrale, la dispersion et un graphique pour décrire une distribution quantitative.
  • La médiane et l’écart interquartile sont robustes face aux valeurs extrêmes ; la moyenne et l’écart-type y sont très sensibles.
  • Vérifie les nombres de valeurs non manquantes et la correspondance des réglages de l’écart-type.
  • Les centiles et les proportions au-dessus d’un seuil peuvent répondre directement à des questions pratiques.
  • Le sens de l’asymétrie indique le côté de la longue queue, pas celui où se trouve la majorité des observations.

3.2 Des graphiques qui montrent la forme d’une distribution

Un graphique de distribution révèle les queues, les pics, les lacunes et les bornes qu’un indicateur de tendance centrale seul masque. Chaque graphique met en évidence des caractéristiques différentes : choisis-le selon la question et vérifie comment les choix d’affichage modifient l’image.

Choisir des classes pertinentes pour l’histogramme

Un histogramme divise une échelle quantitative en intervalles et compte les observations dans chacun. sns.histplot(data=df, x="minutes", binwidth=5) utilise des classes de cinq minutes. seaborn choisit automatiquement les classes par défaut ; les histogrammes de pandas et de Matplotlib en utilisent 10 par défaut. Essaie plusieurs réglages raisonnables. Une classe très large peut réunir deux pics, tandis que des classes très étroites peuvent faire apparaître le bruit d’échantillonnage comme une structure. Pour des dénombrements entiers, discrete=True centre une barre sur chaque entier.

Décris la forme comme symétrique, asymétrique à droite ou à gauche, uniforme, ou présentant un, deux ou plusieurs pics. Cherche les lacunes, les plafonds et les planchers. Des pics aux valeurs rondes comme 30 et 60 minutes peuvent refléter une attraction des valeurs rondes due à l’arrondi des durées déclarées. Deux pics près de 25 et 50 minutes peuvent refléter des livraisons à vélo et en voiture. L’ajout de hue="vehicle" permet de vérifier si ces groupes expliquent la séparation.

Comparer les principaux graphiques
GraphiqueCe qu’il aide à voirCe qu’il faut vérifier
HistogrammeEffectifs par intervalle, pics et lacunesAmplitude et alignement des classes
Estimation de densité par noyauEstimation lisse de la forme de la distributionLargeur de bande et queues impossibles
Boîte à moustachesMédiane, moitié centrale et valeurs extrêmes repéréesPics masqués et taille de l’échantillon
Fonction de répartition empiriqueProportion inférieure ou égale à chaque valeurUnités des axes et population

Une estimation de densité par noyau lisse les observations sous forme d’une courbe. sns.kdeplot(data=df, x="minutes") peut être utile, mais la largeur de bande change sa forme. Le lissage peut masquer des plafonds ou s’étendre sous zéro même lorsque les durées sont positives ou nulles. Interprète ce prolongement comme une caractéristique de l’estimation, et non comme des durées négatives observées.

Une boîte à moustaches trace la médiane dans une boîte allant de Q1 à Q3. Les moustaches atteignent par défaut les valeurs observées les plus extrêmes situées à une distance maximale de 1,5 fois l’écart interquartile de la boîte ; les points plus éloignés apparaissent séparément. Une moustache ne correspond donc pas nécessairement au minimum ou au maximum, et son extrémité est une valeur observée plutôt que la borne calculée.

Lire les proportions cumulées et les échelles multiplicatives
sns.ecdfplot(data=df, x="minutes")

Une fonction de répartition empirique indique la proportion inférieure ou égale à chaque valeur. Pars horizontalement d’une proportion comme 0,9 pour repérer un centile. Elle évite le choix de classes d’un histogramme et permet de comparer la fréquence à laquelle les valeurs restent sous un seuil.

Une échelle logarithmique est utile pour des données positives dont les rapports sont grands. Sur une échelle en base 10, 10, 100 et 1 000 sont également espacés, car chaque étape multiplie par 10. Les logarithmes réels ordinaires exigent des valeurs positives ; np.log1p(x) calcule le logarithme naturel de un plus la valeur et prend en charge zéro dans des données positives ou nulles.

Pour comparer des groupes de tailles différentes, normalise séparément chaque groupe avec stat="percent", common_norm=False, ou utilise des panneaux aux axes partagés. Termine par une description chiffrée, par exemple : « La distribution des durées de livraison est asymétrique à droite, avec une médiane de 29 minutes et la moitié des commandes livrées entre 25 et 36 minutes ; une commande a pris 95 minutes. »

Points clés

  • Essaie des réglages de classes raisonnables avant de conclure qu’un pic ou une lacune est réel.
  • Vérifie si des mélanges de groupes expliquent les pics multiples.
  • Le lissage d’une estimation de densité par noyau peut masquer des caractéristiques ou s’étendre au-delà des observations possibles.
  • Une boîte à moustaches décrit la position et la dispersion, mais masque le nombre de modes et la taille de l’échantillon.
  • Une fonction de répartition empirique donne les proportions cumulées sans classes.
  • Les échelles logarithmiques montrent les rapports ; les graphiques normalisés séparément aident à comparer les formes des groupes.

3.3 Effectifs des catégories, ordre et dénominateurs

Les indicateurs de variables qualitatives comptent les observations dans des groupes nommés. Leur sens dépend des libellés, de leur ordre et de la population utilisée pour chaque pourcentage. Un code de catégorie numérique nécessite lui aussi une description par catégories.

Construire un tableau des effectifs et des fréquences

s.value_counts() liste les catégories de la plus fréquente à la moins fréquente. Utilise normalize=True pour les proportions et dropna=False pour inclure une ligne de valeurs manquantes. Pour le texte, describe() indique le nombre de valeurs enregistrées, le nombre de valeurs distinctes, une des valeurs les plus fréquentes et son effectif.

Parmi 200 réponses à une enquête, 30 évaluations sont « faible », 50 sont « moyen » et 120 sont « élevé ». Diviser chaque effectif par 200 donne 15 %, 25 % et 60 %. Si ces 200 personnes ont répondu à une question dans une enquête plus large, les pourcentages décrivent les répondants à cette question. L’inclusion des réponses manquantes modifie le dénominateur.

Préserver un ordre pertinent

Les catégories nominales comme les villes n’ont pas d’ordre intrinsèque ; le tri par fréquence peut faciliter les comparaisons. Les catégories ordinales ont un ordre naturel qui doit rester visible :

order = ["low", "medium", "high"]
counts = s.value_counts().reindex(order, fill_value=0)

Une variable catégorielle ordonnée enregistre l’ordre pour les tris, les comparaisons et les graphiques. Son value_counts() trie toujours par fréquence par défaut ; utilise sort=False ou réindexe explicitement les effectifs. Un graphique ordonné « élevé », « moyen », « faible » selon les fréquences peut rendre l’échelle plus difficile à reconnaître.

Distinguer les libellés rares des valeurs manquantes

Lorsque de nombreuses catégories rendent un graphique illisible, conserve les libellés les plus fréquents et rassemble les autres sous « Other » :

top = s.value_counts().nlargest(5).index
grouped = s.where(s.isna() | s.isin(top), "Other")

La présence de s.isna() préserve les valeurs manquantes. Sans cette partie, les entrées manquantes deviendraient elles aussi « Other », mélangeant les non-réponses aux réponses rares réelles. Indique combien de libellés et d’observations ont été regroupés. Vérifie qu’une catégorie rare importante pour la question n’a pas disparu dans le groupe ainsi constitué.

Les diagrammes en barres horizontales conviennent aux libellés longs. Par exemple, sns.countplot(data=df, y="city", order=df["city"].value_counts().index) trie les effectifs des villes. Fais commencer l’axe des effectifs à zéro, car la longueur des barres représente le nombre d’observations. Un diagramme circulaire devient difficile à comparer lorsqu’il comporte de nombreux secteurs.

Transformer des intervalles numériques en catégories nommées
bands = pd.cut(
    df["minutes"], bins=[0, 30, 45, np.inf],
    labels=["up to 30", "over 30 to 45", "over 45"],
    include_lowest=True
)

Les intervalles fermés à droite par défaut placent 30 dans la première classe et 45 dans la deuxième. include_lowest=True inclut aussi 0 dans la première classe. Les valeurs hors de ces intervalles deviennent manquantes dans le résultat de la discrétisation : vérifie donc les durées négatives avant d’interpréter son nombre de valeurs manquantes. Consigne les bornes, car un libellé comme « 30–45 » seul ne précise pas le traitement de 30.

Pour les codes nominaux, associe 1 et 2 aux libellés de leurs régions avant de les afficher. Calculer la moyenne des codes de région décrirait leur numérotation arbitraire, et non la distribution des régions.

Points clés

  • Les tableaux des effectifs et des fréquences indiquent les effectifs ou les proportions des catégories ; précise le dénominateur.
  • Garde les valeurs ordinales dans leur ordre naturel, même lorsque leurs fréquences diffèrent.
  • Garde les réponses manquantes séparées lorsque tu regroupes les libellés rares dans la catégorie « Autres ».
  • Fais commencer les axes d’effectifs des diagrammes en barres à zéro et rends les libellés longs lisibles.
  • Indique explicitement les bornes des classes numériques et vérifie le traitement de leurs extrémités.

3.4 Repérage et traitement des valeurs aberrantes

Une valeur aberrante est éloignée de la majeure partie des données selon une règle et un contexte précisés. Elle peut être une erreur d’enregistrement, un événement rare réel ou un élément d’un groupe distinct. Son repérage déclenche un examen.

Calculer les bornes de l’écart interquartile

La règle de l’écart interquartile repère les valeurs inférieures ou supérieures à ces bornes :

Q1−1,5×IQRQ3+1,5×IQR

Pour les durées de livraison 18, 22, 25, 25, 27, 29, 31, 34, 38, 41 et 95, Q1 est de 25 et Q3 de 36. L’écart interquartile est de 11 : la borne inférieure est donc de 8,5 et la borne supérieure de 52,5. La commande livrée en 95 minutes est repérée.

q1, q3 = s.quantile([0.25, 0.75])
iqr = q3 - q1
flag = (s < q1 - 1.5 * iqr) | (s > q3 + 1.5 * iqr)

Ce sont les bornes utilisées par défaut pour les points aberrants d’une boîte à moustaches. Une valeur exactement sur une borne est considérée à l’intérieur. Dans une longue queue à droite, cette règle peut repérer de nombreuses grandes valeurs réelles.

Comprendre le masquage et les scores robustes

Un score z mesure la distance à la moyenne en unités d’écart-type :

z=x−xˉs

Une règle courante repère les scores z dont la valeur absolue dépasse 3. Ici, la moyenne est de 35 et l’écart-type d’échantillon d’environ 21,02 : 95 donne donc un score z d’environ 2,85. La valeur extrême a augmenté les indicateurs de tendance centrale et de dispersion utilisés pour la juger. Cet effet, appelé effet de masquage, peut permettre à une valeur inhabituelle d’échapper à la règle. Celle-ci convient aussi mieux aux distributions à peu près symétriques qu’aux distributions asymétriques.

L’écart absolu médian, ou MAD, est la médiane des distances absolues à la médiane. Il utilise des grandeurs robustes. Un score z modifié s’écrit :

M=0,6745(x−x~)MAD

Ici, la médiane est de 29 et l’écart absolu médian de 5. Pour 95 minutes, le score modifié est d’environ 8,90, au-delà du seuil usuel de 3,5 en valeur absolue. Si l’écart absolu médian est nul, cette division n’est pas définie ; examine les valeurs répétées et utilise une autre vérification justifiée au lieu de présenter un score infini comme un résultat mesuré.

Examiner avant de modifier les données

Les règles métier viennent en premier. Une durée écoulée négative est une erreur selon cette définition, quel que soit son score statistique. Pour une valeur extrême possible, examine toute la ligne, ses horodatages, sa distance, son groupe et sa source. Une tempête ou un long trajet peut expliquer une livraison lente.

Éléments constatésAction possible
La source établit la valeur correcteLa corriger dans le code et consigner la modification
Un enregistrement est une erreur avérée dont la valeur ne peut pas être retrouvéeLe supprimer ou le marquer comme manquant, en consignant l’effet
La valeur est réelleLa conserver ; utiliser des indicateurs robustes ou une échelle utile
La conclusion dépend fortement de la valeurComparer les résultats avec et sans cette valeur

Comparer les résultats avec et sans l’observation constitue une analyse de sensibilité. L’écrêtage des valeurs extrêmes à un centile choisi, appelé winsorisation, est une autre transformation délibérée ; indique le seuil et précise que des valeurs ont été modifiées. Examine aussi les combinaisons inhabituelles : deux mesures individuellement plausibles peuvent former un point rare dans un nuage de points.

Points clés

  • Les bornes de l’écart interquartile repèrent les valeurs hors de Q1 − 1,5 IQR et Q3 + 1,5 IQR.
  • Les valeurs extrêmes peuvent augmenter la moyenne et l’écart-type et se masquer elles-mêmes dans les scores z.
  • Les scores z modifiés utilisent la médiane et l’écart absolu médian ; un écart absolu médian nul exige une autre approche.
  • Les règles métier distinguent les valeurs impossibles des valeurs extrêmes possibles.
  • Examine l’enregistrement complet et documente chaque traitement.
  • Utilise des analyses de sensibilité pour montrer quand les valeurs extrêmes changent une conclusion.
  • Recherche les combinaisons inhabituelles ainsi que les valeurs extrêmes de chaque variable.
4

Explorer les relations entre variables

Deux variables peuvent évoluer ensemble selon une droite, le long d’une courbe ou simplement parce que des groupes distincts ont été réunis. Utilise des nuages de points pour voir la forme, des coefficients de corrélation pour résumer certains aspects de la liaison et des vérifications par sous-groupe pour en rechercher l’origine. L’interprétation exige de tenir compte de la population, de la taille de l’échantillon utilisable et du processus de collecte, ainsi que de la force apparente de la relation.

4.1 Des nuages de points qui révèlent la relation

Un nuage de points place chaque observation selon sa paire de valeurs quantitatives. Place une éventuelle variable explicative sur l’axe horizontal et la variable réponse sur l’axe vertical. Le graphique aide à voir la forme d’une relation avant de la résumer par un coefficient.

Décrire quatre caractéristiques

Utilise le sens, la forme, la force et les points inhabituels. Un sens positif signifie que la réponse tend à augmenter lorsque la variable horizontale augmente ; un sens négatif signifie qu’elle tend à diminuer. La forme peut être droite, courbe ou divisée en groupes. La force décrit à quel point les points suivent cette forme ; elle peut être forte même lorsque la forme est courbe.

Pour des températures de 8, 12, 15, 18, 21, 24, 27 et 30 °C, les nombres de locations quotidiennes de vélos sont respectivement de 310, 420, 515, 600, 690, 760, 800 et 780. La relation est globalement forte et positive. Elle est presque linéaire jusqu’à environ 27 °C, puis se stabilise et baisse légèrement. La qualifier uniquement de « positive » passe sous silence le changement aux températures élevées.

sns.scatterplot(data=df, x="temp_c", y="rentals")
Rendre les graphiques denses lisibles

Avec de nombreuses lignes, les points se couvrent les uns les autres : la superposition des points masque les zones où les observations se concentrent. Des marqueurs plus petits et alpha=0.2 révèlent une partie de la densité par transparence. Un graphique à classes hexagonales agrège les observations dans des hexagones :

df.plot.hexbin(x="distance_km", y="minutes", gridsize=30)

Un sns.histplot à deux dimensions offre une vue similaire avec des classes rectangulaires. Un échantillon aléatoire peut réduire l’encombrement ; fixe sa graine pour que les réexécutions montrent le même sous-ensemble. Lorsqu’un axe ne prend que quelques valeurs, une perturbation aléatoire disperse les points superposés pour les rendre visibles. Ce déplacement concerne l’affichage et n’ajoute aucune précision aux mesures.

Ajouter des groupes et examiner une droite ajustée

Utilise hue="season" pour la couleur ou sns.relplot(..., col="season") pour des panneaux distincts. Un nuage global peut contenir des groupes saisonniers distincts. La taille des marqueurs peut représenter une autre quantité si son sens reste clair.

sns.regplot(data=df, x="temp_c", y="rentals") ajoute une droite des moindres carrés et une bande d’incertitude ombrée. Une droite aide à la lecture, mais peut masquer une courbure. lowess=True trace une courbe lisse lorsque la dépendance statsmodels est installée. Examine les observations avant de choisir l’un ou l’autre affichage.

Pour une petite sélection de variables, une matrice de nuages de points trace les nuages par paires et les distributions individuelles. Utilise par exemple la longueur du bec en mm, la longueur de la nageoire en mm, la masse corporelle en g et l’espèce comme groupe de couleur. Environ trois à six variables quantitatives restent lisibles ; en ajouter beaucoup plus crée un mur de petits panneaux.

Examiner la concentration et les tendances temporelles communes

Les axes logarithmiques peuvent espacer des valeurs positives dont les rapports sont grands, comme la population et la consommation totale d’énergie. Garde l’échelle visible dans les libellés. Lorsqu’un point extrême impose une très grande étendue aux axes, examine-le et ajoute une vue clairement légendée de la majeure partie des données afin de rendre le reste de la relation visible.

Deux variables peuvent aussi dessiner une forme parce qu’elles augmentent toutes deux au fil du temps. Colorie les points selon la date ou trace chaque série en fonction du temps. Cette vérification peut révéler si la relation apparente reflète surtout une tendance commune.

Points clés

  • Décris le sens, la forme, la force et les observations inhabituelles.
  • Utilise la transparence, des points plus petits, la discrétisation ou des échantillons à graine fixe pour révéler la densité.
  • Utilise la couleur ou des panneaux pour examiner les groupes au sein d’une relation globale.
  • Examine la courbure avant de te fier à une droite ajustée.
  • Vérifie les échelles, les points extrêmes et les tendances temporelles qui peuvent dominer l’affichage.

4.2 Ce que mesure un coefficient de corrélation

Un coefficient de corrélation résume un aspect d’une liaison statistique. Choisis le coefficient selon la relation que tu veux décrire et interprète-le avec un graphique et le nombre d’observations utilisables.

Pearson mesure une relation linéaire

Le coefficient de Pearson est la somme des produits des écarts aux moyennes divisée par le produit des longueurs centrées :

r=∑(xi−xˉ)(yi−yˉ)∑(xi−xˉ)2∑(yi−yˉ)2

Il est compris entre −1 et 1. Son signe indique le sens et sa valeur absolue la force de la relation linéaire. Les valeurs positives ou négatives parfaites signifient que tous les points utilisables sont sur une droite, les deux variables présentant une dispersion. Le coefficient n’a pas d’unité, ne change pas lorsqu’on échange les axes et reste inchangé lors d’une conversion positive entre unités de mesure.

Un coefficient proche de zéro indique une faible liaison linéaire. Pour les entrées −3, −2, −1, 0, 1, 2, 3 et des sorties égales à leurs carrés, la corrélation de Pearson est exactement nulle malgré une relation en U parfaite. La corrélation diffère aussi de la pente : une droite peu inclinée peut présenter une forte corrélation.

Les méthodes fondées sur les rangs décrivent l’ordre

La corrélation de Spearman calcule la corrélation de Pearson sur les rangs et décrit une liaison monotone : les valeurs tendent à évoluer toujours dans le même sens, même le long d’une courbe. Le tau de Kendall compare les paires d’observations concordantes, ordonnées dans le même sens pour les deux variables, aux paires discordantes, ordonnées en sens opposés. Les méthodes fondées sur les rangs sont moins sensibles aux amplitudes extrêmes que celle de Pearson.

Pour l’exemple des températures et des locations, le coefficient de Pearson est de 0,974, celui de Spearman de 0,976 et celui de Kendall de 0,929. Le nuage de points révèle néanmoins la stabilisation au-dessus d’environ 27 °C. Un coefficient élevé peut coexister avec une courbure importante.

Calculer une matrice avec soin
cols = ["temp_c", "rentals", "distance_km"]
corr = df[cols].corr(method="spearman")
sns.heatmap(corr, annot=True, fmt=".2f",
            vmin=-1, vmax=1, center=0, cmap="vlag")

Pour un DataFrame de types mixtes, df.corr(numeric_only=True) sélectionne les colonnes quantitatives ; exclus aussi les identifiants et les codes de catégories pour lesquels une relation numérique n’a pas de sens. Les valeurs manquantes sont exclues paire par paire : les cellules de la matrice peuvent donc décrire des sous-ensembles différents. Vérifie le nombre d’observations utilisables pour chaque paire. La matrice est symétrique. La corrélation d’une variable avec elle-même vaut 1 lorsqu’elle est définie ; une colonne constante a une corrélation non définie et des valeurs manquantes dans sa ligne, sa colonne et sur la diagonale.

Vérifier la sensibilité à la disposition des données

Pour les entrées de 1 à 10 et les sorties 3, 1, 4, 2, 5, 3, 4, 2, 5, 3, le coefficient de Pearson vaut environ 0,307. L’ajout du seul point (30 ; 30) le porte à 0,938 ; celui de Spearman devient environ 0,462. Un point peut dominer le coefficient de Pearson alors que la majeure partie des données conserve une faible relation.

Le quartet d’Anscombe illustre la même leçon : quatre jeux de données ont une moyenne des entrées de 9, une moyenne des sorties de 7,50, une variance des entrées de 11, une corrélation proche de 0,816 et une droite ajustée y=3,00+0,500x, mais leurs graphiques montrent un nuage, une courbe et différents points influents. Indique la valeur et l’effectif avec tout qualificatif de force ; les domaines utilisent des conventions différentes pour des termes comme « fort ».

Points clés

  • Le coefficient de Pearson décrit une liaison linéaire, sans unité et avec des valeurs comprises entre −1 et 1.
  • Une corrélation de Pearson nulle peut masquer une forte relation courbe.
  • Les coefficients de Spearman et de Kendall décrivent l’ordre et réduisent la sensibilité aux amplitudes extrêmes.
  • L’exclusion des valeurs manquantes paire par paire peut faire reposer les cellules d’une matrice sur des échantillons différents.
  • La corrélation d’une variable constante n’est pas définie.
  • Les graphiques et les analyses de sensibilité révèlent des caractéristiques que des coefficients identiques peuvent masquer.

4.3 Liaisons, causes et comparaisons trompeuses

Une liaison décrit la façon dont les variables apparaissent ensemble dans les données observées. Sa cause demande une explication distincte. Parmi les origines possibles figurent un effet causal, une causalité inverse, une troisième variable, la sélection et le hasard.

Rechercher ce qui pourrait expliquer le lien

Un facteur de confusion influence les deux variables et crée ou déforme leur liaison. La chaleur augmente les ventes de glaces et les accidents de baignade. Réduire les ventes de glaces laisserait subsister le risque lié à la météo. Une variable médiatrice est différente : elle se trouve sur le chemin causal entre les variables.

La causalité inverse renverse le sens proposé. Les clients qui consultent plus souvent les pages d’aide peuvent avoir davantage de commandes échouées parce que les échecs les conduisent vers ces pages. Le lien observé ne permet pas de s’attendre à moins d’échecs si l’on masque les pages d’aide.

Distinguer les relations dans les sous-groupes du résultat global

Le paradoxe de Simpson se produit lorsque la comparaison globale inverse le sens observé dans chaque sous-groupe. Les données d’une étude de 1986 sur les traitements des calculs rénaux illustrent le calcul :

GroupeTraitement ATraitement B
Petits calculs81/87 = 93,1 %234/270 = 86,7 %
Gros calculs192/263 = 73,0 %55/80 = 68,8 %
Ensemble273/350 = 78,0 %289/350 = 82,6 %

A présente la proportion de réussite la plus élevée dans les deux groupes de taille de calculs. B présente la proportion globale la plus élevée parce que A a surtout été utilisé dans les cas plus difficiles de gros calculs. Les taux globaux pondèrent les taux des sous-groupes par leurs effectifs. Examine la composition et compare des sous-groupes pertinents avant d’interpréter un résultat global.

Vérifier le temps, la sélection et l’agrégation

Deux séries sans lien peuvent toutes deux augmenter au fil des années et sembler fortement corrélées. Trace-les au fil du temps et examine les changements d’une période à l’autre ou les relations au sein des périodes. La relation entre les niveaux peut surtout refléter leur tendance temporelle commune.

Une plage sélectionnée change aussi ce qui est visible. Parmi les étudiants sélectionnés pour leurs scores élevés à l’entrée, la plage des scores est étroite et la corrélation entre scores et notes peut être bien plus faible que parmi tous les candidats. Décris la population sélectionnée ; son coefficient répond à une question différente de celui calculé pour tous les candidats.

Une corrélation entre moyennes par ville concerne les villes. L’appliquer aux habitants pris individuellement constitue une erreur écologique. L’agrégation peut renforcer, affaiblir ou inverser une liaison, car la relation au sein des groupes et la composition entre groupes ne concordent pas nécessairement.

Voir dans une recherche étendue une source d’hypothèses

Avec 20 variables quantitatives, il existe 190 paires distinctes. L’examen de ces paires et de nombreux segments donne de multiples occasions à des régularités dues au hasard d’apparaître. Indique l’étendue de ton exploration, puis présente une régularité surprenante comme une hypothèse à vérifier sur de nouvelles données ou par une analyse confirmatoire planifiée.

Utilise une formulation liée aux observations : « Les commandes passées sous la pluie étaient associées à des durées de livraison plus longues pendant cette période. » Cet énoncé consigne une relation. Affirmer que la pluie a causé l’écart exigerait aussi des éléments écartant d’autres explications, comme une composition différente des trajets ou des horaires.

Points clés

  • Envisage la causalité inverse, les facteurs de confusion, la sélection et le hasard pour expliquer une liaison.
  • Les facteurs de confusion influencent les deux variables ; les variables médiatrices se trouvent sur un chemin causal.
  • Les comparaisons globales peuvent inverser celles des sous-groupes lorsque la composition des groupes diffère.
  • Les tendances temporelles, les plages sélectionnées et l’agrégation modifient la liaison mesurée.
  • Les relations au niveau des groupes demandent des interprétations à ce même niveau.
  • Utilise les régularités exploratoires pour formuler des hypothèses et indique l’étendue de la recherche.
5

Comparer des segments de données

Un indicateur global peut masquer des différences entre villes, canaux ou périodes. Compare les distributions des groupes, les proportions des catégories et les taux d’événements en montrant leurs dénominateurs et les tailles des échantillons. Vérifie ensuite si la composition des groupes, les résultats manquants ou une couverture temporelle inégale expliquent l’écart apparent. Une comparaison utile adapte la mesure à la question et précise la base de chaque nombre.

5.1 Comparer les tendances centrales, les dispersions et les queues entre groupes

Un segment est un sous-ensemble défini par une catégorie, une classe numérique ou une période. Une comparaison utile montre les différences entre les distributions entières, en laissant visible la quantité d’observations sur laquelle repose chaque indicateur.

Indiquer les effectifs des groupes à côté des indicateurs
by_city = df.groupby("city")["minutes"].agg(
    ["count", "mean", "median", "std"]
)

L’effectif est ici le nombre de durées enregistrées. Si certaines durées sont manquantes, indique aussi le nombre de commandes et la proportion de valeurs manquantes afin de préciser la base du tableau. Les agrégations nommées peuvent donner aux colonnes des libellés utiles, comme orders=("order_id", "count") et median_min=("minutes", "median").

Considère ces durées de livraison :

VilleDurées en minutesMoyenneMédianeÉcart-type d’échantillon
Lyon24, 30, 27, 33, 29, 3129,029,53,2
Porto22, 25, 21, 40, 2426,424,07,8
Tartu19, 5537,037,025,5

Tartu présente la moyenne la plus élevée, mais ne compte que deux observations. Une longue livraison domine son résultat. Les petits groupes apparaissent souvent aux deux extrémités d’un classement parce que leurs indicateurs varient davantage sous l’effet des observations individuelles. Fixe un effectif minimal avant de classer les groupes et laisse les petits groupes visibles comme éléments insuffisants pour conclure.

Choisir une représentation de la distribution

Une boîte à moustaches sur un axe quantitatif partagé compare les médianes, les moitiés centrales et les valeurs extrêmes repérées. Un diagramme en violon ajoute une estimation de la forme. Avec de petits groupes, les diagrammes en points par catégorie ou en essaim montrent chaque observation et rendent la taille de l’échantillon plus facile à voir.

Pour les histogrammes, utilise des panneaux avec les mêmes axes ou des histogrammes superposés normalisés, par exemple avec stat="density", common_norm=False. Les histogrammes d’effectifs superposés révèlent surtout quel groupe contient le plus d’enregistrements. La superposition des densités permet de comparer la forme de chaque groupe sur une même base.

Deux groupes de même moyenne peuvent avoir des queues très différentes. Une ville où les livraisons sont surtout rapides, avec quelques livraisons très longues, peut avoir la même moyenne qu’une ville où les durées sont toujours modérées. Compare la dispersion, les centiles et une proportion pertinente au-dessus d’un seuil en complément de la tendance centrale.

Préciser la valeur de référence d’un écart

Dans cet échantillon, l’écart entre les moyennes de Tartu et de Lyon est de 8 minutes. Par rapport à Lyon, il est d’environ 27,6 % :

37−2929×100≈27,6%

La valeur de référence est de 29 minutes pour Lyon. Inverser la valeur de référence change le pourcentage relatif, même si l’écart absolu reste de 8 minutes. Indique les faibles effectifs des groupes avec ce calcul descriptif ; le calcul seul ne peut pas établir une différence stable entre les villes.

Vérifier la composition des groupes
df.groupby(["city", "vehicle"])["minutes"].median().unstack()

Ce tableau par ville et par véhicule peut révéler si un écart entre villes provient de la répartition des véhicules. Un tableau croisé dynamique avec le même regroupement et la même médiane donne la même comparaison. Examine aussi les effectifs de ces cellules plus petites : subdiviser un groupe peut réduire les éléments disponibles tout en clarifiant la relation.

Points clés

  • Indique les effectifs des groupes avec la tendance centrale et la dispersion, en précisant la base de chaque effectif.
  • Utilise des échelles partagées et une normalisation au sein de chaque groupe pour comparer les distributions.
  • Examine les queues et les proportions au-dessus d’un seuil ainsi que les indicateurs de tendance centrale.
  • Précise la valeur de référence lorsque tu présentes un écart relatif.
  • Vérifie la composition des sous-groupes et les effectifs des petites cellules avant de classer les groupes.

5.2 Proportions, taux et choix du dénominateur

Les effectifs indiquent combien d’événements se sont produits. Les taux indiquent leur fréquence par rapport aux occasions où ils pouvaient se produire. Lorsque les groupes diffèrent par leur taille, le choix du dénominateur peut modifier la comparaison apparente.

Lire un tableau de contingence dans le sens voulu

Un tableau de contingence compte les combinaisons de deux catégories :

pd.crosstab(df["region"], df["channel"], margins=True)

Le Nord compte 30 commandes par application et 20 par le Web ; le Sud compte 60 commandes par application et 90 par le Web. Le Sud a davantage de commandes par application, mais son total de commandes plus élevé change la comparaison des proportions.

QuestionDénominateurRésultat
Dans le Nord, quelle proportion utilise l’application ?Les 50 commandes du Nord60 %
Dans le Sud, quelle proportion utilise l’application ?Les 150 commandes du Sud40 %
Parmi toutes les commandes par application, quelle proportion vient du Nord ?Les 90 commandes par application33,3 %

normalize="index" divise par les totaux des lignes ; normalize="columns" divise par les totaux des colonnes. normalize="all" utilise le total général. Lis la question à voix haute avant de choisir la normalisation. Après normalisation par ligne, chaque ligne a pour somme 1 ; il en va de même pour chaque colonne après normalisation par colonne.

Préserver les résultats inconnus

Une moyenne de valeurs booléennes donne la proportion de valeurs True. Pour une indicatrice de livraison en retard, les durées manquantes demandent un traitement particulier :

df["late"] = df["minutes"].astype("Float64") > 45
rates = df.groupby("city")["late"].mean()
known = df.groupby("city")["late"].count()

Le type nullable Float64 préserve les durées manquantes sous forme d’indications manquantes. La moyenne par groupe estime alors la proportion de retards parmi les durées enregistrées. Avec les nombres ordinaires à virgule flottante, NaN > 45 vaut False : les durées inconnues seraient donc comptées comme des livraisons à l’heure, ce qui réduirait le taux. Précise le nombre de résultats connus utilisé comme dénominateur et indique la proportion de valeurs manquantes à côté du taux.

Distinguer deux types de variation en pourcentage

Un taux de retard qui passe de 4 % à 5 % augmente de 1 point de pourcentage. La hausse relative utilise le taux initial comme référence :

5−44×100=25%

Écris « a augmenté de 1 point de pourcentage, soit une hausse relative de 25 % ». La formule « a augmenté de 1 % » seule est ambiguë. Pour un taux fondé sur une petite cellule, indique aussi son effectif : 1 commande en retard sur 2 donne 50 %, mais une seule commande supplémentaire livrée à l’heure fait passer le taux à un tiers.

Comparer la part d’un résultat à la taille du groupe

Si le Nord représente 25 % de toutes les commandes mais 40 % des réclamations, il est surreprésenté parmi les réclamations. Cette comparaison rapproche sa part des réclamations de sa part des commandes. Elle répond à une question différente de celle du taux de réclamation dans le Nord, qui exige de diviser le nombre de réclamations du Nord par le nombre de commandes du Nord.

Utilise des barres groupées, des barres empilées à 100 % ou une carte de chaleur légendée pour montrer les proportions. Un tableau région-canal normalisé par ligne et représenté en barres empilées compare la répartition des canaux dans chaque région. Indique le dénominateur dans le titre ou le libellé de l’axe pour que les lecteurs puissent distinguer cette répartition de la composition régionale de chaque canal.

Points clés

  • Les proportions en ligne, en colonne et sur le total général répondent à des questions différentes.
  • Compare les taux d’événements en utilisant les occasions correspondantes dans le même segment.
  • Garde les résultats inconnus comme valeurs manquantes lors de la création d’indicatrices booléennes pour calculer des taux.
  • Les écarts en points de pourcentage s’obtiennent par soustraction des taux ; les variations relatives se calculent en divisant par le taux de référence.
  • Indique les effectifs à côté des taux, surtout pour les petites cellules.
  • Compare la part d’un groupe dans un résultat à sa part de base pour évaluer sa surreprésentation.

5.3 Comparer des périodes comparables

Les totaux par période dépendent à la fois de l’activité et du temps couvert. Avant de décrire une hausse ou une baisse, vérifie les bornes des périodes, les dates manquantes et la saisonnalité habituelle. Compare les segments avec une mesure adaptée à leur taille.

Agréger par période calendaire

Une fois les horodatages de commande convertis, les effectifs mensuels peuvent être calculés ainsi :

monthly = (
    df.set_index("order_date")
      .resample("MS")["order_id"].count()
)

"MS" désigne chaque mois calendaire par son premier jour. Utilise "ME" pour les libellés de fin de mois dans les versions actuelles de pandas. Pour obtenir un tableau mensuel par ville, combine pd.Grouper(key="order_date", freq="MS") avec le regroupement par ville et utilise .size().unstack(). La méthode compte les lignes : vérifie donc d’abord qu’une ligne représente une commande.

Vérifier la durée d’observation avant de comparer les totaux

Supposons qu’il y ait 100 commandes par jour du 1er août au 12 octobre. Les totaux mensuels sont de 3 100 en août, 3 000 en septembre et 1 200 pour la partie enregistrée d’octobre. Le total d’octobre semble beaucoup plus faible, alors que l’activité est la même chaque jour observé.

Divise chaque total par le nombre de jours observés : 31, 30 et 12. Les trois moyennes quotidiennes sont de 100. Compare ces taux ou écarte les périodes incomplètes. Le dénominateur doit représenter la couverture réelle : on ne peut pas considérer sans vérification qu’un jour non enregistré est un jour sans activité.

Même les mois complets ont des durées différentes. Ils peuvent aussi contenir des nombres différents de jours de forte activité. Si l’activité est élevée le samedi, compare les mêmes jours de la semaine ou des taux qui tiennent compte de leur répartition avant d’interpréter un écart mensuel.

Distinguer un cycle d’un changement durable

La saisonnalité est une régularité récurrente, comme un cycle hebdomadaire ou annuel. daily.rolling(7).mean() lisse une fenêtre de sept jours dans une série quotidienne régulièrement espacée. Elle atténue le cycle hebdomadaire tout en conservant les changements plus lents. Compare décembre au mois de décembre précédent lorsque la question porte sur l’évolution annuelle d’une activité saisonnière.

Quelques jours exceptionnellement élevés peuvent ressembler à une tendance sur une courte période. Montre un historique assez long pour comprendre l’amplitude habituelle des fluctuations et conserve les valeurs non lissées lorsqu’elles aident à expliquer un événement important.

Vérifier les lacunes et comparer les trajectoires des segments

Un effectif rééchantillonné nul peut signifier qu’aucun événement n’a été enregistré ou que la collecte a été interrompue. Un changement brusque de niveau peut refléter une nouvelle version de l’application ou une modification de définition. Confirme la couverture et l’historique de collecte auprès de la source des données avant de considérer ces points comme des changements de comportement.

Trace chaque segment sous forme d’une courbe sur des axes partagés, avec les unités et une couleur cohérente par groupe. Les grands groupes peuvent dominer les graphiques d’effectifs. Des proportions, des taux ou un indice rapporté à la valeur initiale de chaque groupe peuvent rendre visibles les changements des groupes plus petits ; précise la mesure représentée.

Une cohorte regroupe les clients selon leur date de début. Suivre les clients ayant commencé en mars et ceux ayant commencé en avril selon le temps écoulé depuis leur première commande permet de distinguer les changements au cours de leur parcours des changements dans la composition globale de la clientèle.

Points clés

  • Vérifie que la couverture est complète et utilise les alias actuels des périodes calendaires.
  • Compare les totaux en tenant compte de la durée des périodes et de la répartition des jours de la semaine.
  • Utilise la durée réellement observée pour les taux et examine les lacunes avant de les considérer comme des zéros.
  • Compare des périodes saisonnières et examine un historique assez long pour interpréter les fluctuations.
  • Utilise les taux par segment ou des trajectoires rapportées à leur valeur initiale lorsque les groupes diffèrent par leur taille.
  • Les cohortes permettent de distinguer le temps écoulé depuis le début des changements dans la composition globale de la clientèle.
6

Présenter les résultats exploratoires de manière reproductible

L’exploration devient utile aux autres lorsque ses résultats répondent à des questions claires et que les éléments qui les étayent peuvent être vérifiés. Sélectionne les graphiques et les nombres qui expliquent les résultats, distingue les constats des causes et actions proposées, et indique les limites qui influencent l’interprétation. Prépare un notebook soigné, des exportations à jour et suffisamment d’informations sur la provenance pour qu’un lecteur autorisé puisse reproduire le travail.

6.1 Des résultats qui répondent à la question

Un résultat utile relie une question à des éléments probants. Il indique l’ampleur d’une régularité, la population et la période qu’elle décrit, ainsi que les limites qui influencent son interprétation. Construis le rapport autour des questions plutôt que dans l’ordre de création des graphiques.

Étayer un résultat

Par exemple : « De janvier à septembre 2026, la durée médiane de livraison était de 29 minutes ; 8 % des 48 200 commandes ont pris plus de 45 minutes. La proportion de retards était la plus élevée les vendredis et samedis soirs : 14 %, contre 6 % les autres soirs. »

Cet énoncé précise la période, l’indicateur de tendance centrale, le seuil, le dénominateur et la comparaison. Utilise une précision suffisante pour la décision. « 29 minutes » est plus facile à utiliser que « 29,4545 minutes » lorsque les décimales supplémentaires n’apportent aucune information pratique. Pour une durée dont la distribution est asymétrique, une médiane et un centile supérieur décrivent souvent mieux l’expérience qu’une moyenne seule.

Distinguer ce qui s’est passé, pourquoi et que faire
Type d’énoncéExempleRôle
Constat« Les livraisons en retard étaient plus fréquentes les soirs de pluie. »Décrit une liaison observée
Interprétation« La pluie ralentit les coursiers. »Propose une explication causale
Recommandation« Prévoir davantage de coursiers les soirs de pluie. »Propose une action fondée sur cette explication

Une recommandation dépend d’hypothèses sur la cause et sur l’effet de l’action. Laisse ces hypothèses visibles et précise les éléments supplémentaires nécessaires. Un constat peut être utile même si son explication reste une hypothèse.

Faire expliquer un résultat par un graphique

Sélectionne les quelques graphiques qui répondent aux questions et les surprises importantes. Conserve les autres vues exploratoires utiles en annexe ou dans le notebook. Donne à chaque graphique du rapport un titre qui énonce son résultat, par exemple « Les retards de livraison culminent les vendredis et samedis soirs ». Indique les unités sur les axes, trie les catégories lorsque c’est pertinent et garde une couleur cohérente pour chaque segment d’un graphique à l’autre. Indique la source et la période des données.

Présente aussi les éléments contradictoires. Si un graphique global suggère une amélioration mais qu’un grand segment s’est dégradé, le résultat de ce segment compte pour l’interprétation. Ne sélectionner que les graphiques qui étayent un scénario attendu masquerait des informations nécessaires au lecteur.

Organiser un rapport concis

Un ordre clair est : question et contexte ; source des données, période, nombre de lignes et sens d’une ligne ; problèmes de qualité et décisions de nettoyage ; trois à cinq résultats clés étayés ; limites ; prochaines étapes. Chaque résultat doit répondre à une question ou expliquer une surprise importante.

Les limites précisent ce que couvrent les données, ce qui a été exclu et pourquoi, la quantité de données manquantes et le caractère associatif des régularités observées. Par exemple, signale les 37 commandes annulées retirées d’une comparaison des livraisons effectuées. Les prochaines étapes peuvent consister à vérifier une hypothèse sur de nouvelles données, à recueillir une variable manquante, à corriger un problème du système source ou à examiner une question en vue d’une modélisation ultérieure.

Points clés

  • Pour chaque résultat, indique les éléments qui l’étayent, son ampleur, la population et la période.
  • Distingue les constats, les interprétations et les recommandations.
  • Sélectionne et légende les graphiques autour des résultats, en laissant visibles les éléments contradictoires.
  • Indique une précision utile, les dénominateurs, les valeurs manquantes et les exclusions.
  • Termine par des questions ou des actions concrètes que l’analyse permet d’envisager.

6.2 Partager des résultats que d’autres peuvent reproduire

Une analyse partagée doit offrir des résultats lisibles et permettre de retrouver le code et les données d’entrée qui les ont produits. Prépare un notebook final dont l’ordre, les sorties et les fichiers associés concordent.

Nettoyer et exécuter le notebook final

Supprime les cellules inutilisées et en double, garde les dépendances dans l’ordre d’exécution et ajoute du texte Markdown expliquant les décisions entre les sections de code. Conserve séparément le travail plus expérimental lorsqu’il est utile. Redémarre le noyau et exécute toutes les cellules avant chaque exportation. Examine les erreurs et les sorties modifiées : une exécution réussie peut tout de même révéler qu’un ancien nombre écrit est obsolète.

Produis les nombres présentés à partir du code :

s = df["minutes"]
print(f"Median delivery time: {s.median():.0f} minutes")

Un nombre saisi dans un paragraphe peut rester inchangé après l’actualisation des données. Garde l’énoncé affiché lié au calcul pour que la prochaine exécution le mette à jour.

Exporter les rapports, les figures et les tableaux

Une exportation HTML peut être lue dans un navigateur sans environnement Python :

jupyter nbconvert --to html --execute report.ipynb

L’option d’exécution lance le notebook avant la conversion. Vérifie le rapport obtenu ainsi que le notebook. Des outils de publication comme Quarto offrent une autre manière d’obtenir un rapport lisible.

Enregistre les figures et les tableaux depuis le code pour que les réexécutions actualisent les fichiers :

fig.savefig("figures/late_by_hour.png", dpi=200,
            bbox_inches="tight")
summary.to_csv("output/city_summary.csv")

Crée les dossiers de destination lors de la préparation du projet. Une capture d’écran conserve la sortie d’un instant, mais ne maintient aucun lien automatique avec le calcul suivant.

Inclure la provenance et les instructions d’exécution

Consigne la source des données, la date d’extraction, le fichier ou la version d’entrée, le nombre de lignes, les filtres, les versions des logiciels et les graines aléatoires. Ces détails expliquent quelles données d’entrée et quels paramètres ont produit un résultat. Regroupe les paramètres variables près du début du notebook pour qu’une mise à jour mensuelle ait un point d’entrée clair.

Un projet peut séparer les données brutes et traitées, les notebooks, les figures et les tableaux exportés. Inclus un README qui précise l’objectif, le répertoire de travail attendu et les étapes d’exécution, ainsi qu’un fichier d’environnement des paquets. Lors du partage de l’analyse réexécutable, conserve ensemble le notebook, les instructions et l’environnement. Si l’accès aux données d’entrée doit être contrôlé, indique comment un lecteur autorisé peut obtenir la version correspondante.

Vérifier ce que révèlent les sorties

Avant le partage, examine chaque cellule de sortie et chaque exportation pour détecter les informations personnelles. Les tableaux d’aperçu peuvent exposer des noms, des adresses électroniques et des lieux précis même lorsque le graphique final est agrégé. Supprime, masque ou agrège les colonnes permettant l’identification selon le cas, et respecte les accords et les règles de protection des données applicables au jeu de données.

Points clés

  • Nettoie le notebook final et vérifie-le en redémarrant le noyau puis en exécutant toutes les cellules.
  • Calcule les nombres présentés dans le code et enregistre les figures et les tableaux par programmation.
  • Exécute le notebook avant l’exportation pour que le rapport contienne des sorties à jour.
  • Inclus la provenance des données, les paramètres, l’environnement et des instructions d’exécution claires.
  • Examine toutes les sorties partagées pour détecter les informations personnelles.

Analyse exploratoire des données en Python : exemples

6 Leçons Interactives

1

Transformer une demande générale en analyse réexécutable

12 étapes
Formule les questions, établis ce que représente une ligne et construis un notebook qui reproduit ses résultats.
  1. 1
    IntroductionDonner un point de départ clair à l’analyse

    Une équipe demande : « Quelle est la fiabilité de notre service de réparation ? » Tu disposes d’une table de tâches de réparation et d’un notebook. Avant de créer un graphique, détermine ce que l’équipe doit savoir et ce que chaque ligne peut t’apprendre. Tu vas transformer la demande en questions concrètes, identifier le niveau de détail et organiser le travail pour qu’une nouvelle session du notebook puisse le reproduire.

  2. 2
    ExplicationPoser des questions qui suggèrent une comparaison

    Pars de la décision : l’équipe doit peut-être repérer où se produisent les longues attentes. Des questions utiles sont : « Quelle est la durée typique d’une réparation ? », « Quelle proportion dépasse notre seuil de service ? » et « Comment les durées diffèrent-elles selon le modèle d’appareil ? » Chacune précise une quantité ou une comparaison. Prévois une place pour les nouvelles questions lorsqu’un graphique révèle un groupe inattendu ou un problème de qualité.

  3. 3
    ExempleÉtablir ce que représentent les lignes

    Le fichier contient 900 lignes de tâches et 300 identifiants d’intervention distincts. Une intervention peut comprendre plusieurs tâches. Le rapport est de 3 tâches par intervention en moyenne, mais le nombre de tâches peut varier d’une intervention à l’autre. Compter les lignes répond à une question sur les tâches. Une question sur le nombre d’interventions nécessite les identifiants d’intervention distincts ou une table au niveau des interventions, avec une règle justifiée pour réunir les informations des tâches.

  4. 4
    DéfiChoisir le dénombrement adapté à la question

    L’équipe veut connaître la proportion d’interventions en retard. La table contient plusieurs lignes de tâches par intervention. La moyenne d’une indicatrice de retard au niveau des tâches répondrait-elle à cette question ?

    ---reveal---

    Elle donne la proportion de tâches en retard et accorde davantage de poids aux interventions comportant plusieurs tâches. Définis d’abord quand une intervention est considérée comme en retard, réunis les informations des tâches au niveau de l’intervention, puis divise le nombre d’interventions en retard par le nombre d’interventions admissibles.

  5. 5
    LienRevenir aux contrôles de qualité lorsqu’une régularité surprend

    L’exploration suit une boucle : questions, chargement, établissement du profil, distributions, relations, comparaisons et résultats. Supposons qu’un modèle d’appareil semble prendre 1 000 fois plus de temps. Reviens aux définitions des colonnes et aux unités de la source avant d’expliquer un écart de performance. La surprise a fait naître une question de qualité qui peut modifier l’étape suivante de l’analyse.

  6. 6
    Point cléDistinguer une découverte d’une vérification planifiée

    Une régularité trouvée après l’examen de nombreux graphiques est une piste pour la suite. L’analyse confirmatoire vérifie une hypothèse formulée à l’avance, idéalement sur de nouvelles observations. Vérifie aussi qui est représenté : les évaluations de clients ayant choisi de donner leur avis décrivent ces répondants. Le processus de collecte détermine les éléments nécessaires pour étendre le résultat à toutes les personnes ayant bénéficié du service.

  7. 7
    ExplicationVoir ce que le noyau mémorise

    Le noyau d’un notebook conserve les variables entre les exécutions de cellules. Si tu crées une table filtrée, supprimes la cellule qui la définit et continues à la représenter graphiquement, la session actuelle peut toujours fonctionner. Un nouveau noyau n’a aucun moyen de recréer cette table. Les compteurs d’exécution révèlent l’ordre des exécutions, mais la vérification décisive consiste à redémarrer le noyau puis à exécuter toutes les cellules du début à la fin.

  8. 8
    ExempleRendre les dépendances visibles

    Organise le notebook ainsi : objectif et questions, importations, paramètres, puis sections d’analyse. Place les chemins, les seuils et les graines susceptibles de changer dans la cellule de paramètres. Utilise un chemin relatif au projet comme Path("data/raw/repairs.csv") et documente le répertoire de travail. Garde les fichiers bruts inchangés et effectue les corrections dans le code pour appliquer la même procédure au prochain jeu de données.

  9. 9
    ConseilMaîtriser les éléments qui varient entre les exécutions

    Consigne les versions des paquets et enregistre un fichier d’environnement. Fixe la graine de chaque étape aléatoire ; pour une table d’au moins 200 lignes, df.sample(n=200, random_state=17) reproduit l’échantillon avec les mêmes données d’entrée et logiciels. Une graine fixe ne peut pas restaurer un fichier d’entrée écrasé : consigne donc aussi la version des données et les détails de l’extraction.

  10. 10
    DéfiTrouver une dépendance invisible

    Une cellule de synthèse s’exécute correctement pour l’instant. Après avoir redémarré le noyau et exécuté toutes les cellules, elle échoue parce que job_totals n’est pas défini. Qu’est-ce que cela t’indique et que dois-tu corriger ?

    ---reveal---

    L’ancien noyau conservait une variable que la suite visible des cellules ne crée pas. Restaure ou déplace le code qui la définit avant la synthèse, puis réexécute tout le notebook. Enregistrer l’ancienne sortie conserverait le résultat sans corriger sa dépendance.

  11. 11
    DéfiVérifier un nouveau fichier avant de répondre à la même question

    Le fichier du mois suivant arrive. Ta question porte sur le nombre d’interventions, et la table préparée au niveau des interventions doit avoir des identifiants uniques. Comment associer la vérification du sens d’une ligne à une réexécution fiable ?

    ---reveal---

    Charge la nouvelle version à l’aide de la cellule de paramètres et vérifie par une assertion que la clé d’intervention de la table préparée est unique. Redémarre le noyau et exécute toutes les cellules. Une vérification qui échoue révèle un problème d’entrée ou de préparation avant que des interventions répétées ne faussent la proportion présentée.

  12. 12
    RécapitulatifGarder la question et le calcul liés

    Tu disposes maintenant d’une question liée à une décision, du sens d’une ligne qui détermine les dénombrements et d’un notebook aux dépendances visibles. Utilise les mêmes habitudes pour établir le premier profil : consigne la version des données d’entrée, examine leur structure et laisse les vérifications arrêter l’exécution lorsque les hypothèses ne sont pas respectées. Lorsqu’une nouvelle régularité apparaît, décide si elle exige une autre vérification de qualité, une nouvelle comparaison ou une hypothèse à étudier.

2

Examiner un nouveau fichier avant de se fier aux régularités observées

13 étapes
Examine les types et les clés, quantifie les valeurs manquantes et les doublons, et documente les vérifications de validité.

Enregistre cette unité pour suivre chaque Leçon Interactive pas à pas.

  1. 1
    IntroductionÉtablir un profil étayé par les données
  2. 2
    ExplicationExaminer plus que les premières lignes
  3. 3
    ExempleChoisir les types d’analyse selon le sens des colonnes
  4. 4
    DéfiVérifier ce qu’une conversion a perdu
  5. 5
    ExplicationQuantifier les valeurs manquantes avant de choisir un traitement
  6. 6
    ExempleVoir comment la suppression modifie la composition
  7. 7
    Point cléLimiter les conclusions sur les valeurs manquantes aux éléments disponibles
  8. 8
    DéfiInterpréter les nombres de doublons
  9. 9
    ExempleDistinguer les valeurs manquantes des valeurs enregistrées invalides
  10. 10
    ExplicationVérifier la concordance entre les champs
  11. 11
    DéfiChoisir une action justifiée
  12. 12
    DéfiRelier le profil à la prochaine comparaison
  13. 13
    RécapitulatifConserver le profil avec les résultats
3

Construire une image complète de chaque variable

17 étapes
Combine les indicateurs quantitatifs et qualitatifs, les graphiques de distribution et les examens documentés des valeurs aberrantes.

Enregistre cette unité pour suivre chaque Leçon Interactive pas à pas.

  1. 1
    IntroductionAller au-delà d’un seul indicateur de tendance centrale
  2. 2
    ExplicationComparer la tendance centrale et la dispersion
  3. 3
    ExempleCalculer les indicateurs de tendance centrale
  4. 4
    ExempleAjouter une mesure de la dispersion de la moitié centrale
  5. 5
    DéfiPrévoir l’effet d’une valeur extrême
  6. 6
    ExplicationUtiliser des classes pour révéler la structure
  7. 7
    ExempleComprendre ce qu’indique un graphique cumulé
  8. 8
    DéfiExaminer un second pic suspect
  9. 9
    ConseilLire attentivement les courbes lissées et les échelles
  10. 10
    ExempleDécrire les catégories sur une base claire
  11. 11
    ExplicationDistinguer la catégorie « Autres » des valeurs manquantes
  12. 12
    DéfiVérifier une borne d’intervalle
  13. 13
    ExempleCalculer les bornes de détection des valeurs aberrantes
  14. 14
    Point cléVoir comment une valeur peut se masquer elle-même
  15. 15
    DéfiDécider d’un traitement à partir des éléments disponibles
  16. 16
    DéfiTransformer l’ensemble des observations en résultat
  17. 17
    RécapitulatifChoisir une représentation adaptée à la question
4

Lire une liaison avant de l’expliquer

15 étapes
Utilise les nuages de points, la corrélation et le raisonnement par sous-groupe pour distinguer les régularités des explications causales.

Enregistre cette unité pour suivre chaque Leçon Interactive pas à pas.

  1. 1
    IntroductionGarder les observations en vue
  2. 2
    ExempleDécrire plus que le sens de la relation
  3. 3
    ConseilRévéler la densité et les groupes
  4. 4
    DéfiModifier un graphique dans un but précis
  5. 5
    ExplicationIdentifier ce que mesure Pearson
  6. 6
    ExempleUtiliser un exemple courbe pour vérifier le sens
  7. 7
    ExplicationUtiliser les rangs pour décrire un ordre cohérent
  8. 8
    DéfiExaminer un coefficient dominé par un point
  9. 9
    ConseilExaminer l’échantillon derrière une cellule de carte de chaleur
  10. 10
    ExplicationLister les sens possibles et les causes communes
  11. 11
    ExempleComparer au sein des groupes de difficulté
  12. 12
    ExempleObserver l’inversion globale
  13. 13
    DéfiChoisir le niveau d’interprétation
  14. 14
    DéfiChoisir des éléments complémentaires pour un résultat surprenant
  15. 15
    RécapitulatifPrésenter la relation et la question qui reste
5

Comparer les groupes sur une même base

15 étapes
Utilise les distributions, les dénominateurs et la couverture des périodes pour effectuer des comparaisons pertinentes.

Enregistre cette unité pour suivre chaque Leçon Interactive pas à pas.

  1. 1
    IntroductionRendre visible la base de la comparaison
  2. 2
    ExempleInclure assez d’informations pour juger une moyenne
  3. 3
    ExempleExprimer un écart avec sa valeur de référence
  4. 4
    DéfiRechercher une différence cachée entre distributions
  5. 5
    ExempleChoisir le sens d’un pourcentage
  6. 6
    ConseilÉviter de classer les résultats manquants parmi les valeurs False
  7. 7
    DéfiDistinguer l’écart de la variation relative
  8. 8
    DéfiVérifier si les effectifs répondent à la question sur le taux
  9. 9
    ExplicationAgréger la période à comparer
  10. 10
    ExempleCalculer l’activité rapportée à la durée observée
  11. 11
    LienDistinguer un cycle récurrent d’un changement
  12. 12
    DéfiExaminer un zéro avant de l’interpréter
  13. 13
    Point cléAligner les parcours des clients
  14. 14
    DéfiCombiner les vérifications du taux et de la couverture
  15. 15
    RécapitulatifRattacher chaque comparaison à son dénominateur
6

Transformer l’exploration en rapport vérifiable

11 étapes
Rédige des résultats étayés, prépare des exportations à jour et partage suffisamment de contexte pour rendre l’analyse reproductible.

Enregistre cette unité pour suivre chaque Leçon Interactive pas à pas.

  1. 1
    IntroductionAider un lecteur à évaluer le résultat
  2. 2
    ExempleRédiger un résultat avec son ampleur et son périmètre
  3. 3
    ExplicationDistinguer les niveaux d’une affirmation
  4. 4
    ConseilChoisir les graphiques autour de la question
  5. 5
    DéfiCorriger un résultat trop général
  6. 6
    ExplicationFonder le rapport sur l’exécution finale
  7. 7
    ExempleExporter des fichiers à jour
  8. 8
    ExplicationConsigner ce qu’un futur analyste devra retrouver
  9. 9
    DéfiVérifier tout ce qui sera partagé
  10. 10
    DéfiRésoudre une modification de sortie avant la diffusion
  11. 11
    RécapitulatifFournir des éléments vérifiables en permettant de remonter à leur origine

Analyse exploratoire des données en Python : QCM

50 Questions Pratiques en 5 séries

Série 1 : Partir de données fiables10 Questions Pratiques

Question 1 sur 10

Une table de maintenance contient une ligne par tâche de réparation. Une intervention peut comprendre plusieurs tâches. Que compte len(df) ?
  1. Les machines distinctes
  2. Les tâches de réparation
  3. Les interventions achevées
  4. Les jours de maintenance
Afficher la réponseMasquer la réponse
Réponse : B
Chaque ligne représente une tâche de réparation : le nombre de lignes compte donc les tâches. Une intervention comportant plusieurs tâches contribue à plusieurs lignes. Pour compter les interventions, il faut identifier les clés d’intervention distinctes ou créer d’abord une table au niveau des interventions ; utiliser le nombre de lignes donnerait plus de poids aux interventions comportant plusieurs tâches.

Question 2 sur 10

Une colonne stocke des numéros de série d’équipements sous forme d’entiers. Quel indicateur permet de vérifier si elle identifie les lignes ?
  1. Sa moyenne d’échantillon
  2. Son quartile supérieur
  3. Son écart-type
  4. Son unicité
Afficher la réponseMasquer la réponse
Réponse : D
Un identifiant de ligne doit présenter l’unicité attendue : rechercher les numéros de série répétés aide donc à évaluer la clé proposée. Le numéro de série est un libellé même s’il est stocké comme entier. Sa moyenne décrit le système de numérotation et ne fournit aucun indicateur utile sur la performance des équipements.

Question 3 sur 10

Une table de capteurs contient 750 lignes et 45 valeurs de température manquantes. Quel pourcentage des températures est manquant ?
  1. 6%
  2. 16,7%
  3. 0,06%
  4. 94%
Afficher la réponseMasquer la réponse
Réponse : A
La proportion de valeurs manquantes est de 45 divisé par 750, soit 0,06 ou 6 %. Le dénominateur comprend toutes les lignes pour lesquelles la température aurait pu être enregistrée. Indiquer 0,06 % revient à confondre la proportion décimale et le pourcentage : convertir une proportion en pourcentage revient à la multiplier par 100.

Question 4 sur 10

Un notebook utilise clean sans problème, mais après un redémarrage et une exécution de toutes les cellules, cette cellule produit une NameError. Que dois-tu examiner en premier ?
  1. Si la graine a changé entre les exécutions
  2. Si le format de sortie a changé
  3. Si une exécution antérieure a créé une dépendance non enregistrée
  4. Si le fichier contient une colonne quantitative supplémentaire
Afficher la réponseMasquer la réponse
Réponse : C
Le noyau actuel peut conserver une variable créée par une cellule supprimée ou par une exécution dans le désordre. Un nouveau noyau révèle cette définition manquante. Changer une graine aléatoire modifie les valeurs échantillonnées, mais ne crée pas une variable non définie ; restaure la dépendance dans le notebook avant de le réexécuter.

Question 5 sur 10

Une colonne textuelle contient « 240 », « 315 », « unknown » et « 18 kg ». Après pd.to_numeric(s, errors="coerce"), que faut-il examiner ?
  1. Les deux entrées devenues manquantes
  2. La seule valeur « unknown »
  3. La seule valeur analysée la plus petite
  4. Les deux entrées numériques conservées
Afficher la réponseMasquer la réponse
Réponse : A
Les deux chaînes non analysées deviennent manquantes par coercition. « unknown » peut être un code de valeur manquante prévu, tandis que « 18 kg » peut contenir une mesure récupérable avec une unité non prise en charge. Considérer toutes les nouvelles valeurs manquantes comme anodines masquerait la distinction entre une information absente et un échec d’analyse.

Question 6 sur 10

Les identifiants sont 7, 8, 8, 9, 9, 9. Que renvoie s.duplicated(keep=False).sum() ?
  1. 3
  2. 4
  3. 5
  4. 6
Afficher la réponseMasquer la réponse
Réponse : C
Les deux lignes d’identifiant 8 et les trois lignes d’identifiant 9 appartiennent à des groupes de clés répétées, soit cinq lignes marquées. La vérification des doublons par défaut ne compterait que les trois occurrences suivant chaque première occurrence. keep=False inclut ces premières occurrences afin de permettre l’examen complet des conflits.

Question 7 sur 10

Une colonne de durées positives ou nulles contient 12, −3 et une valeur manquante. Quelle expression compte les durées enregistrées invalides ?
  1. (~s.between(0, float("inf"))).sum()
  2. (s.notna() & s.lt(0)).sum()
  3. s.isna().sum() + s.lt(0).sum()
  4. s.notna().sum() - s.isna().sum()
Afficher la réponseMasquer la réponse
Réponse : B
Combiner une vérification de présence avec une recherche de valeurs négatives isole les durées enregistrées qui enfreignent la règle métier. L’entrée manquante doit être comptée séparément. La négation d’une vérification d’intervalle seule peut inclure les valeurs manquantes parce que between renvoie False pour celles-ci, ce qui mélange deux problèmes de qualité différents.

Question 8 sur 10

Un jeu de données contient 200 enregistrements de l’Est et 800 de l’Ouest. L’âge est manquant dans 50 % des enregistrements de l’Est et 5 % de ceux de l’Ouest. Après suppression des enregistrements sans âge, quelle est la part de l’Est parmi les enregistrements conservés ?
  1. 20,0%
  2. 50,0%
  3. 12,5%
  4. 11,6%
Afficher la réponseMasquer la réponse
Réponse : D
L’Est conserve 100 enregistrements et l’Ouest en conserve 760 : l’Est représente donc 100 des 860 enregistrements conservés, soit environ 11,6 %. Sa part initiale était de 20 %. Supprimer les âges manquants modifie la répartition régionale parce que les proportions de valeurs manquantes diffèrent ; la proportion totale de valeurs manquantes ne peut pas être appliquée également aux deux régions.

Question 9 sur 10

Une enquête ne contient que des réponses de personnes ayant résilié un service. Quelle satisfaction ses évaluations peuvent-elles décrire directement ?
  1. Celle de tous les utilisateurs potentiels
  2. Celle de tous les abonnés actifs
  3. Celle des personnes ayant résilié et répondu
  4. Celle de toutes les personnes ayant résilié
Afficher la réponseMasquer la réponse
Réponse : C
Les évaluations enregistrées décrivent directement les personnes ayant résilié qui ont répondu à l’enquête. Elles excluent les utilisateurs actifs et les personnes ayant résilié qui n’ont pas répondu. Même étendre le résultat à toutes les personnes ayant résilié exige des éléments sur la non-réponse ; le fait que chaque répondant ait résilié ne fait pas des répondants un recensement complet.

Question 10 sur 10

Les masses de colis forment des groupes près de 0,8 et de 800. La colonne indique kg et le fournisseur a récemment fusionné deux systèmes. Quelle est la meilleure étape suivante ?
  1. Vérifier les unités de la source par système avant de convertir
  2. Convertir en kg toutes les masses supérieures à la médiane
  3. Supprimer le groupe supérieur comme valeurs aberrantes
  4. Traiter les deux groupes comme des catégories de produits distinctes
Afficher la réponseMasquer la réponse
Réponse : A
Un facteur proche de 1 000 et une fusion de systèmes suggèrent un mélange de grammes et de kilogrammes : vérifie donc les définitions de la source et les enregistrements par système. Deux groupes peuvent aussi refléter des différences réelles. Convertir toutes les valeurs supérieures à la médiane suppose la cause avant de la vérifier et pourrait modifier de grandes mesures réelles.
Série 2 : Lire les distributions et examiner les valeurs extrêmes10 Questions Pratiques

Enregistre cette unité pour voir chaque réponse et t'entraîner sur chaque série.

Question 1 sur 10

Les temps d’attente sont de 4, 6, 7, 9 et 34 minutes. Quelle est la médiane ?
  1. 12 minutes
  2. 7 minutes
  3. 9 minutes
  4. 6 minutes
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 2 sur 10

Quel graphique montre directement la proportion des attentes enregistrées inférieures ou égales à chaque durée, sans choisir de classes ?
  1. Un histogramme d’effectifs
  2. Un diagramme en barres par catégorie
  3. Une droite ajustée à un nuage de points
  4. Une fonction de répartition empirique
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 3 sur 10

Pour les trajets domicile-travail, on compte 72 réponses « train », 18 « bus » et 10 réponses manquantes. Quelle proportion de trajets en train value_counts(normalize=True) indique-t-il ?
  1. 72%
  2. 90%
  3. 80%
  4. 70%
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 4 sur 10

Un échantillon a Q1 = 14 et Q3 = 22. Quelle valeur se trouve au-dessus de sa borne supérieure de détection fondée sur l’écart interquartile ?
  1. 35
  2. 34
  3. 30
  4. 26
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 5 sur 10

Un histogramme présente deux pics qui restent visibles avec plusieurs amplitudes de classes raisonnables. Quel graphique examiner ensuite pour étudier au mieux l’hypothèse d’un mélange de deux modèles d’appareils ?
  1. Un histogramme avec des classes encore plus étroites
  2. Un histogramme séparé par modèle d’appareil
  3. Une seule boîte à moustaches pour toutes les mesures
  4. Une estimation de densité avec une largeur de bande bien plus grande
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 6 sur 10

Une variable catégorielle ordonnée comporte les niveaux « poor », « fair », « good ». Qu’est-ce qui produit les effectifs dans cet ordre même lorsque « good » est le plus fréquent ?
  1. s.value_counts(ascending=True)
  2. s.value_counts(normalize=True)
  3. s.value_counts(dropna=False)
  4. s.value_counts(sort=False)
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 7 sur 10

Un analyste compare deux très petits échantillons en utilisant l’écart-type par défaut de NumPy pour l’un et celui de pandas pour l’autre. Les deux échantillons contiennent exactement 2, 4 et 6. Pourquoi les dispersions obtenues diffèrent-elles ?
  1. Les fonctions utilisent des diviseurs par défaut différents
  2. pandas trie les valeurs avant de calculer la dispersion
  3. NumPy inclut une observation supplémentaire égale à zéro
  4. La médiane remplace l’une des moyennes
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 8 sur 10

Une mesure inhabituelle de 50 est vérifiée à la source. Sa moyenne d’échantillon est de 20, son écart-type de 12, sa médiane de 16 et son écart absolu médian de 2. Comment les règles usuelles fondées sur le score z ordinaire et modifié l’évaluent-elles, et quel traitement est justifié ?
  1. Les deux la repèrent ; la conserver et vérifier son influence.
  2. Seule la règle modifiée la repère ; supprimer la valeur.
  3. Seule la règle modifiée la repère ; examiner son influence.
  4. Seule la règle ordinaire la repère ; la conserver et vérifier son influence.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 9 sur 10

Les attentes enregistrées sont de 8, 10, 12, 14, 16 et 60 minutes, avec une attente supplémentaire manquante. Quelle médiane et quelle proportion d’attentes de plus de 30 minutes décrivent les attentes enregistrées ?
  1. Médiane : 20 minutes ; proportion : 16,7 %.
  2. Médiane : 13 minutes ; proportion : 16,7 %.
  3. Médiane : 13 minutes ; proportion : 14,3 %.
  4. Médiane : 14 minutes ; proportion : 14,3 %.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 10 sur 10

Une durée est répartie en classes avec bins=[0, 20, 50, np.inf], include_lowest=True et la fermeture des intervalles par défaut. Dans quelles classes vont 0, 20 et 50 ?
  1. 0 manquant ; 20 première ; 50 deuxième
  2. 0 première ; 20 deuxième ; 50 troisième
  3. 0 première ; 20 deuxième ; 50 deuxième
  4. 0 première ; 20 première ; 50 deuxième
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Série 3 : Interpréter les relations et les différences entre groupes10 Questions Pratiques

Enregistre cette unité pour voir chaque réponse et t'entraîner sur chaque série.

Question 1 sur 10

Dans un nuage de points, les points suivent de près une courbe décroissante. Comment décrire son sens et sa forme ?
  1. Négatif et courbe
  2. Positif et courbe
  3. Négatif et linéaire
  4. Positif et linéaire
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 2 sur 10

Une colonne présente la même valeur enregistrée dans chaque ligne. Quelle est sa corrélation de Pearson avec elle-même ?
  1. 0
  2. −1
  3. Non définie
  4. 1
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 3 sur 10

La durée moyenne de réparation est de 25 minutes pour l’équipe R et de 30 pour l’équipe S. De combien celle de S est-elle supérieure à celle de R en valeur relative ?
  1. 5%
  2. 20%
  3. 16,7%
  4. 120%
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 4 sur 10

Un nuage de points présente une forme nette en U et le r de Pearson est proche de zéro. Que résume le coefficient ?
  1. L’absence de toute relation utile
  2. La distance typique entre les deux variables
  3. L’absence de dispersion de la réponse
  4. La faiblesse de la relation linéaire
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 5 sur 10

Une température quotidienne plus élevée augmente à la fois les visites à la plage et les ventes de boissons fraîches. Quel rôle joue la température dans leur liaison ?
  1. Une variable médiatrice entre les deux
  2. Une variable réponse
  3. Un facteur de confusion
  4. Une observation en double
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 6 sur 10

Deux équipes ont la même durée médiane de réparation, mais l’une compte beaucoup plus de réparations très longues. Que dois-tu comparer ensuite ?
  1. Un centile supérieur et la proportion de réparations longues
  2. Uniquement l’écart entre les médianes
  3. Uniquement le nombre de noms d’équipes
  4. La moyenne des deux médianes des équipes
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 7 sur 10

Un nuage de points dense paraît uniformément sombre, alors que la plupart des observations pourraient être concentrées dans une petite zone. Quelle modification permet le mieux d’examiner cette concentration en conservant toutes les observations ?
  1. Ajouter une droite de tendance au graphique sombre
  2. Utiliser un graphique à classes hexagonales avec une échelle d’effectifs légendée
  3. Augmenter la taille et l’opacité de chaque marqueur
  4. Trier les enregistrements avant de tracer les mêmes marqueurs
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 8 sur 10

Une table de 500 lignes contient 80 valeurs x manquantes, 50 valeurs y manquantes et 20 lignes où les deux manquent. Une matrice de Pearson présentée utilise min_periods=400. Sa cellule x–y peut-elle valablement contenir 0,82 ?
  1. Oui ; 420 paires atteignent le minimum.
  2. Non ; 370 paires sont sous le minimum.
  3. Oui ; les 500 lignes comptent comme paires.
  4. Non ; 390 paires sont sous le minimum.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 9 sur 10

Le logiciel A réussit 18 cas faciles sur 20 et 48 cas difficiles sur 80. Le logiciel B réussit 64 cas faciles sur 80 et 10 cas difficiles sur 20. Quelle comparaison en découle ?
  1. A est en tête à chaque niveau de difficulté ; B est en tête au total
  2. B est en tête à chaque niveau de difficulté ; A est en tête au total
  3. A est en tête à chaque niveau de difficulté et au total
  4. B est en tête à chaque niveau de difficulté et au total
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 10 sur 10

Un centre de réparation a une moyenne de 42 minutes sur 3 interventions ; un autre a une moyenne de 34 minutes sur 900 interventions. Quelle présentation est la plus justifiée ?
  1. Classer le premier centre dernier à partir du seul écart des moyennes
  2. Retirer le premier centre de tous les tableaux présentés
  3. Montrer les effectifs et les distributions ; éviter un classement ferme
  4. Remplacer la moyenne du premier centre par celle du plus grand échantillon
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Série 4 : Choisir les dénominateurs et des périodes comparables10 Questions Pratiques

Enregistre cette unité pour voir chaque réponse et t'entraîner sur chaque série.

Question 1 sur 10

Un taux d’échec passe de 12 % à 15 %. Quelle est la hausse en points de pourcentage ?
  1. 25 points
  2. 3 points
  3. 1,25 point
  4. 27 points
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 2 sur 10

Une série quotidienne régulièrement espacée présente un cycle hebdomadaire récurrent. Quel lissage simple peut atténuer ce cycle ?
  1. Une moyenne mobile sur sept jours
  2. Un dénombrement par année
  3. Un nombre cumulé de lignes
  4. Un graphique des identifiants quotidiens
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 3 sur 10

Une table présente les régions en lignes et les formules d’abonnement en colonnes. Que décrit la normalisation par colonne ?
  1. Les parts des formules dans chaque région
  2. La part de chaque cellule dans tous les abonnements
  3. Le total des abonnements dans chaque région
  4. Les parts des régions dans chaque formule
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 4 sur 10

Un service enregistre 2 400 interventions sur les 30 jours d’avril et 1 200 jusqu’au 12 mai, avec une couverture quotidienne complète sur les deux périodes. Quelle comparaison est étayée ?
  1. L’activité quotidienne a baissé de 50 %
  2. L’activité quotidienne est restée inchangée
  3. L’activité quotidienne a augmenté de 25 %
  4. L’activité quotidienne a augmenté de 50 %
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 5 sur 10

Une clinique compte 150 enregistrements de rendez-vous, dont 30 sans indication de présence. Parmi les statuts connus, 18 sont des absences. Quel est le taux d’absence parmi les résultats connus ?
  1. 12 % des 150 enregistrements
  2. 15 % des 120 enregistrements
  3. 20 % des 150 enregistrements
  4. 25 % des 120 enregistrements
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 6 sur 10

La durée moyenne d’étude et les scores moyens par ville sont fortement corrélés. Quelle conclusion au niveau individuel ce seul résultat justifie-t-il ?
  1. Étudier plus longtemps augmente le score de chaque étudiant
  2. Chaque ville présente la même liaison en son sein
  3. Le coefficient des villes est égal à celui des étudiants
  4. La relation individuelle exige des données individuelles
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 7 sur 10

L’agence A compte 24 réclamations pour 600 commandes ; B en compte 18 pour 300. Quelle agence a le taux de réclamation le plus élevé, et de combien ?
  1. B, de 2 points de pourcentage
  2. A, de 2 points de pourcentage
  3. B, de 50 points de pourcentage
  4. A, de 6 points de pourcentage
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 8 sur 10

L’activité mensuelle augmente brusquement lorsqu’une nouvelle version de l’application modifie la définition d’une session active. Que faut-il faire avant de signaler une amélioration de l’engagement ?
  1. Lisser la série et qualifier le bond de tendance
  2. Retirer le mois de la mise à jour et comparer les totaux bruts
  3. Harmoniser les définitions et comparer une mesure cohérente
  4. Diviser chaque mois par son nombre de jours calendaires
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 9 sur 10

Deux villes comptent 80 et 800 observations. Tu veux comparer les formes de leurs distributions de durées dans des histogrammes superposés. Quel réglage convient ?
  1. Des effectifs avec des bornes d’axes propres à chaque ville
  2. Des pourcentages par ville avec des classes communes
  3. Des effectifs bruts avec des bornes de classes différentes
  4. Un histogramme global sans libellés de ville
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 10 sur 10

La proportion globale de nouvelles commandes baisse à mesure que de nombreux nouveaux clients arrivent, tandis que chaque groupe défini par son mois d’arrivée suit une évolution similaire des nouvelles commandes selon le nombre de mois écoulés depuis son arrivée. Quelle comparaison permet le mieux d’étudier cette baisse ?
  1. Réunir tous les mois dans une seule proportion globale
  2. Comparer les cohortes pendant le même mois calendaire
  3. Comparer le nombre brut de nouvelles commandes de chaque mois calendaire
  4. Comparer les cohortes après un même temps depuis leur arrivée
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Série 5 : Formuler et partager des résultats étayés10 Questions Pratiques

Enregistre cette unité pour voir chaque réponse et t'entraîner sur chaque série.

Question 1 sur 10

Un rapport indique : « Les pannes étaient plus fréquentes les jours humides. » De quel type d’énoncé s’agit-il ?
  1. Un constat
  2. Une intervention
  3. Une conclusion causale
  4. Une recommandation
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 2 sur 10

Quelle commande d’exportation exécute un notebook avant de produire un rapport HTML ?
  1. jupyter nbconvert --to html report.ipynb
  2. jupyter nbconvert --to notebook report.ipynb
  3. jupyter nbconvert --to html --execute report.ipynb
  4. jupyter nbconvert --clear-output report.ipynb
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 3 sur 10

Un analyste veut résumer une relation toujours croissante mais fortement courbe. Quel coefficient utilise directement les rangs ?
  1. La corrélation de Pearson
  2. La corrélation de Spearman
  3. L’écart-type d’échantillon
  4. La pente de la droite ajustée
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 4 sur 10

Un tableau de bord indique « La performance s’est améliorée » après une baisse de la durée médiane de 26 à 22 minutes, mais la proportion de durées supérieures à 60 minutes a doublé. Quelle révision représente le mieux les éléments observés ?
  1. Conserver l’affirmation d’amélioration puisque la médiane a baissé
  2. Remplacer la médiane par la seule proportion de longues durées
  3. Supprimer les deux mesures parce qu’elles évoluent en sens opposés
  4. Présenter la baisse de la médiane et la hausse des longues durées
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 5 sur 10

Un notebook utilise une graine d’échantillonnage fixe et des versions de paquets consignées, mais lit un CSV écrasé chaque semaine. Une réexécution modifie les résultats. Que manque-t-il pour reproduire l’analyse de la semaine précédente ?
  1. Une copie identifiable des données d’entrée de la semaine précédente
  2. Une valeur de graine plus grande pour l’échantillonnage
  3. Une seconde copie des sorties graphiques actuelles
  4. Une règle d’arrondi plus précise pour les indicateurs
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 6 sur 10

Un notebook fonctionne dans sa session actuelle, mais présente cet ordre visible : calculer le taux ; charger les données ; compter les événements et les résultats connus ; afficher le taux. Un aperçu au début expose aussi des adresses électroniques. Quelle séquence prépare un rapport partagé fiable ?
  1. Garder l’ordre ; effacer l’aperçu ; exporter les sorties stockées.
  2. Charger et compter d’abord ; afficher le taux ; exporter les sorties stockées.
  3. Charger, compter et calculer ; vérifier une nouvelle exécution ; retirer les identifiants exposés.
  4. Charger, compter et calculer ; garder l’aperçu ; exporter après exécution.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 7 sur 10

Un analyste examine toutes les paires parmi 16 variables et met en avant une relation surprenante. Que doit contenir le compte rendu ?
  1. L’affirmation que le plus grand coefficient identifie la cause
  2. L’étendue de la recherche et une hypothèse à étudier
  3. L’affirmation qu’une grande matrice empêche les résultats dus au hasard
  4. Le coefficient choisi sans le contexte de la recherche
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 8 sur 10

Pendant la période 1, 240 interventions comprennent 24 durées inconnues et 18 interventions enregistrées en retard. Pendant la période 2, 180 interventions comprennent 60 durées inconnues et 18 interventions enregistrées en retard. Quelle comparaison des proportions de retard parmi les durées connues doit figurer dans le rapport ?
  1. De 7,5 % à 10 % ; les valeurs manquantes ont aussi augmenté.
  2. De 8,3 % à 15 % ; les valeurs manquantes sont restées stables.
  3. De 7,5 % à 15 % ; les valeurs manquantes sont restées stables.
  4. De 8,3 % à 15 % ; les valeurs manquantes ont aussi augmenté.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 9 sur 10

Un rapport final réunit deux agences : l’une compte 20 échecs sur 100 résultats connus, l’autre 15 sur 50. Son paragraphe utilise un taux de 25 % saisi à la main et calculé comme la moyenne des taux des agences. Quelle correction rend l’énoncé global exact et actualisable ?
  1. Indiquer 23,3 % et produire l’énoncé à partir des effectifs réunis.
  2. Indiquer 25,0 % et produire l’énoncé à partir des moyennes des agences.
  3. Indiquer 23,3 % et remplacer le paragraphe à la main après chaque exécution.
  4. Indiquer 30,0 % et produire l’énoncé à partir de la plus petite agence.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 10 sur 10

Une enquête compte 80 membres du personnel technique, dont 20 revenus manquants, et 120 membres du personnel commercial, dont 60 revenus manquants. Après conservation des revenus connus, quelle proportion de personnel technique et quelle conclusion sur les valeurs manquantes sont étayées ?
  1. 50 % ; le mécanisme est établi comme MAR.
  2. 40 % ; les valeurs manquantes sont liées au groupe professionnel.
  3. 60 % ; le mécanisme est établi comme MCAR.
  4. 50 % ; les valeurs manquantes sont liées au groupe professionnel.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Tu bloques sur ton propre exercice ? Aide aux Devoirs

Mots-Clés

85 Mots-Clés, chacun avec sa définition

A

Absence de données
L’absence de données désigne le manque d’une valeur enregistrée, mesuré par des effectifs, des proportions et des répartitions entre variables ou groupes.
Une comparaison régionale montre qu’un système source laisse bien plus d’âges de clients non enregistrés.
Analyse confirmatoire
L’analyse confirmatoire vérifie une hypothèse formulée à l’avance, idéalement à l’aide d’observations distinctes de celles qui ont suggéré cette hypothèse.
Une régularité nouvellement découverte le week-end devient une question à vérifier à l’aide d’enregistrements d’une période ultérieure.
Analyse de sensibilité
Une analyse de sensibilité compare les résultats obtenus avec d’autres choix d’analyse justifiés afin de montrer si une conclusion dépend de ces choix.
Comparer les indicateurs avec et sans une valeur extrême réelle révèle à quel point elle influe sur la régularité présentée.
Analyse exploratoire des données
L’analyse exploratoire des données consiste à examiner des données à l’aide d’indicateurs et de graphiques pour évaluer leur qualité, trouver des régularités et formuler des questions.
Un analyste établit le profil des enregistrements de réparation avant de rechercher quels types d’interventions entraînent les attentes les plus longues.
Assertion
Une assertion est une vérification exécutable qui arrête une exécution lorsqu’une condition attendue n’est pas respectée, révélant un problème d’entrée ou de logique.
Une assertion d’unicité de clé détecte les enregistrements d’équipements répétés avant qu’ils ne gonflent un effectif régional.
Asymétrie
L’asymétrie décrit le manque de symétrie d’une distribution, dont une queue à droite ou à gauche s’étend davantage vers les grandes ou les petites valeurs.
Quelques montants de transaction très élevés peuvent créer une longue queue à droite même lorsque la plupart des transactions sont de faible montant.
Attraction des valeurs rondes
L’attraction des valeurs rondes est une concentration sur des valeurs rondes ou privilégiées, souvent due à l’arrondi ou à la manière dont les personnes déclarent les mesures.
Les durées de trajet déclarées peuvent se concentrer à 15, 30 et 60 minutes au lieu de se répartir de façon continue sur l’échelle.

B

Bornes de Tukey
Les bornes de Tukey sont les limites Q1 − 1,5 IQR et Q3 + 1,5 IQR utilisées pour repérer les observations au-delà de ces bornes fondées sur la dispersion centrale.
Les moustaches d’une boîte à moustaches s’arrêtent à des valeurs observées à l’intérieur de ces bornes ; les points plus éloignés sont tracés séparément.

C

Cardinalité
La cardinalité est le nombre de valeurs distinctes enregistrées dans une colonne ; elle aide à identifier les constantes, les identifiants et les ensembles complexes de catégories.
Des milliers de libellés de villes incitent à vérifier les variantes orthographiques avant de représenter un tableau des effectifs et des fréquences.
Catégorie « Autres »
La catégorie « Autres » regroupe des libellés rares enregistrés qui ont été sélectionnés pour simplifier un affichage, tout en gardant les réponses manquantes séparées.
Le rapport indique combien de libellés et d’enregistrements ont été regroupés afin que les lecteurs puissent juger ce que le regroupement masque.
Causalité inverse
La causalité inverse signifie que la variable proposée comme réponse contribue à causer la variable proposée comme explicative, inversant ainsi le sens supposé.
Les échecs de commande peuvent conduire les clients vers les pages d’aide, créant un lien que masquer ces pages ne résoudrait pas.
Centile
Un centile est une valeur qui marque une proportion cumulée donnée d’une distribution et situe les observations par rapport à l’ensemble.
Un centile supérieur des durées aide à décrire l’expérience des clients qui attendent relativement longtemps.
Classe
Une classe est un intervalle défini pour regrouper des observations quantitatives, avec des bornes qui déterminent où appartiennent les valeurs situées aux extrémités.
Des classes de cinq minutes permettent de relier plus facilement les régularités des temps d’attente à des seuils de service concrets.
Clé
Une clé est une colonne ou une combinaison de colonnes censée identifier de manière unique un enregistrement au niveau de détail choisi pour la table.
Le magasin et la date associés identifient un enregistrement quotidien de magasin, même si chaque colonne comporte des valeurs répétées.
Cohérence
La cohérence signifie que les valeurs concordent entre colonnes, enregistrements ou sources liés, selon les définitions utilisées dans l’analyse.
Une heure d’achèvement antérieure à l’heure de début révèle une contradiction entre deux dates d’apparence valide.
Cohorte
Une cohorte est un groupe défini par une même période de début, qui permet de comparer les comportements après un même temps écoulé depuis l’arrivée ou la première activité.
Les personnes arrivées en mars et en avril peuvent être comparées pendant leur deuxième mois plutôt que pendant le même mois calendaire.
Constat
Un constat est un énoncé sur une régularité dans les données analysées, distingué d’une explication de la raison pour laquelle elle s’est produite.
Davantage de livraisons en retard les soirs de pluie décrit les enregistrements sans attribuer de mécanisme causal.
Corrélation de Pearson
La corrélation de Pearson est un coefficient sans unité compris entre −1 et 1, qui mesure le sens et la force d’une relation linéaire entre des variables quantitatives présentant une dispersion.
Un nuage de points nettement en U peut avoir un coefficient proche de zéro parce que la relation est courbe.
Corrélation de Spearman
La corrélation de Spearman est la corrélation de Pearson calculée sur les rangs ; elle mesure une liaison monotone tout en réduisant la sensibilité aux amplitudes extrêmes.
Une courbe toujours croissante peut présenter une forte liaison entre les rangs même si elle est très incurvée.

D

Dictionnaire de données
Un dictionnaire de données consigne le sens des colonnes, les types d’analyse, les unités, les valeurs autorisées et les problèmes connus pour servir de référence à l’analyse.
L’entrée consacrée aux durées précise que celles-ci sont en minutes et que les valeurs négatives enregistrées sont invalides.
Données manquantes au hasard (MAR)
Les données manquantes au hasard désignent un mécanisme dans lequel l’absence dépend uniquement de variables observées, sans dépendance supplémentaire aux valeurs non observées.
Un lien entre l’absence de l’âge et la ville est observable, mais davantage d’éléments sont nécessaires pour établir le mécanisme.
Données manquantes complètement au hasard (MCAR)
Les données manquantes complètement au hasard désignent un mécanisme dans lequel la probabilité qu’une valeur manque n’est liée ni aux valeurs observées ni aux valeurs manquantes.
Une liaison entre les valeurs manquantes et une catégorie enregistrée contredit l’idée d’une absence complètement au hasard.
Données manquantes non au hasard (MNAR)
Les données manquantes non au hasard désignent un mécanisme dans lequel l’absence dépend de la valeur manquante elle-même ; les enregistrements observés peuvent donc différer systématiquement.
Les personnes aux revenus plus élevés peuvent être plus susceptibles de laisser sans réponse la question sur les revenus dans une enquête.

É

Écart absolu médian
L’écart absolu médian est la médiane des distances absolues à la médiane ; il fournit une mesure robuste de la dispersion.
Un score modifié de détection des valeurs aberrantes utilise cette mesure de dispersion avec la médiane pour réduire l’influence des amplitudes extrêmes.
Écart interquartile
L’écart interquartile est Q3 moins Q1 ; il mesure la largeur de la moitié centrale d’une distribution quantitative et est robuste face aux valeurs extrêmes.
Présenter la médiane et l’écart interquartile donne des indicateurs utiles de tendance centrale et de dispersion pour une variable de durée dont la distribution est asymétrique à droite.
Écart relatif
Un écart relatif divise la différence avec une valeur de référence par cette valeur, puis la multiplie souvent par 100 pour exprimer le résultat en pourcentage.
Inverser la comparaison change le pourcentage relatif parce que le dénominateur change lui aussi.
Écart-type
L’écart-type mesure la dispersion des valeurs autour de leur moyenne dans l’unité de mesure d’origine ; il est sensible aux valeurs extrêmes.
Deux files d’attente de moyennes similaires peuvent avoir des écarts-types différents parce que les attentes sont plus dispersées dans l’une d’elles.
Échelle logarithmique
Une échelle logarithmique place des rapports égaux à des distances égales, ce qui aide à représenter des quantités positives couvrant plusieurs ordres de grandeur.
Sur un axe en base 10, 10, 100 et 1 000 apparaissent à des positions également espacées malgré des différences inégales.
État caché
L’état caché est une dépendance à un historique d’exécution que le code actuellement visible du notebook ne peut pas reproduire lorsqu’il est exécuté du début à la fin.
Un graphique final peut fonctionner dans la session actuelle mais échouer lorsque toutes les cellules sont exécutées après un redémarrage.

E

Effectif du groupe
L’effectif du groupe est le nombre d’observations qui contribuent à un indicateur d’un segment ; il indique la quantité de données descriptives qui l’étaye.
Deux commandes fournissent une base bien moins solide pour classer une ville que plusieurs centaines de commandes enregistrées.
Effet de masquage
L’effet de masquage se produit lorsque des valeurs extrêmes augmentent suffisamment la moyenne et l’écart-type pour réduire leur propre distance apparente exprimée par le score z.
Une longue attente frappante peut échapper à une règle de trois écarts-types parce qu’elle a aussi augmenté la dispersion.
Enregistrement en double
Un enregistrement en double répète une information déjà représentée à la granularité visée ; les lignes identiques et les clés contradictoires demandent des vérifications distinctes.
Des clés d’achat répétées avec des totaux différents doivent être examinées avant de supprimer l’un ou l’autre des enregistrements.
Erreur écologique
L’erreur écologique consiste à transposer sans justification une relation mesurée entre des groupes aux individus qui composent ces groupes.
Une relation entre moyennes de villes exige des enregistrements individuels avant de pouvoir décrire les habitants pris individuellement.
Estimation de densité par noyau
Une estimation de densité par noyau est une courbe lisse qui estime une distribution. La forme de cette courbe dépend de la largeur de bande et peut s’étendre au-delà des bornes observées.
Une courbe de durées qui s’étend sous zéro reflète le lissage et ne prouve pas que des attentes négatives ont été observées.
Exportation par programmation
Une exportation par programmation enregistre une figure, un tableau ou un rapport à l’aide de code afin qu’une réexécution de l’analyse puisse actualiser le fichier partagé.
Un tableau enregistré reste lié à son calcul actuel au lieu de devenir une capture d’écran obsolète.

F

Facteur de confusion
Un facteur de confusion est une variable qui influence les deux variables étudiées, créant ou déformant leur liaison observée.
La météo peut influencer à la fois la demande et les attentes, ce qui complique l’interprétation de leur relation.
Fichier d’environnement
Un fichier d’environnement consigne les paquets logiciels et leurs versions nécessaires pour recréer la configuration informatique de l’analyse.
Le notebook et les instructions d’exécution sont partagés avec les versions correspondantes des paquets pour permettre une réexécution ultérieure.
Fonction de répartition empirique
Une fonction de répartition empirique montre la proportion d’observations inférieures ou égales à chaque valeur, sans regroupement en classes.
La hauteur à 40 minutes donne la proportion des attentes enregistrées qui ne dépassent pas cette durée.

G

Graine aléatoire
Une graine aléatoire est une valeur d’initialisation qui rend une procédure aléatoire reproductible lorsque ses données d’entrée et ses logiciels restent identiques.
Un échantillon obtenu avec une graine fixe conserve les mêmes observations dans un nuage de points réduit lors des réexécutions du notebook.

H

Histogramme
Un histogramme regroupe les valeurs quantitatives en intervalles et affiche l’effectif ou la quantité normalisée dans chaque intervalle.
Modifier l’amplitude des intervalles peut révéler deux pics réunis dans une seule barre large.
Hypothèse
Une hypothèse est une explication ou une régularité proposée qui peut être examinée à l’aide d’éléments, notamment de nouvelles données ou d’une analyse planifiée.
Un pic des temps d’attente suggère de vérifier si les effectifs du personnel diffèrent pendant les périodes concernées.

I

Interprétation
Une interprétation propose le sens d’une régularité observée ou la raison pour laquelle elle s’est produite ; l’explication suggérée doit être étayée.
Une explication des retards fondée sur la météo reste une hypothèse tant que les autres explications n’ont pas été vérifiées.

J

Journal de qualité des données
Un journal de qualité des données consigne les problèmes, les règles de détection, les observations concernées et les décisions de traitement afin de pouvoir retracer les données analysées.
Le journal indique combien de clés contradictoires ont été trouvées et quelle source a permis d’établir les valeurs corrigées.

L

Liaison monotone
Une liaison monotone suit une tendance constamment croissante ou décroissante, qui peut être courbe plutôt que droite.
Une courbe croissante qui se stabilise progressivement peut conserver un ordre cohérent pour la plupart des observations.
Limite
Une limite indique une caractéristique de la couverture, de la qualité ou de la conception qui influence la manière d’interpréter ou de généraliser un résultat.
Un rapport indique les enregistrements exclus et la hausse de la proportion de valeurs manquantes avant de comparer les performances récentes.

M

Matrice de corrélation
Une matrice de corrélation contient les coefficients par paires de variables quantitatives sélectionnées ; elle est symétrique, car échanger les variables ne modifie pas la corrélation.
Les cellules peuvent utiliser des observations différentes lorsque les valeurs manquantes sont exclues séparément pour chaque paire.
Matrice de nuages de points
Une matrice de nuages de points dispose les nuages de points par paires et les distributions individuelles dans une matrice pour un petit ensemble de variables sélectionnées.
Colorier les mesures par espèce peut révéler des groupes présents dans plusieurs relations entre paires de variables.
Médiane
La médiane est la valeur centrale des données ordonnées ou, lorsque l’effectif est pair, la moyenne des deux valeurs centrales ; elle fournit un indicateur robuste de tendance centrale.
Une longue queue à droite dans la distribution des durées de livraison déplace davantage la moyenne que la médiane.
Moyenne
La moyenne est la somme des valeurs numériques enregistrées divisée par leur nombre ; c’est un indicateur de tendance centrale sensible aux amplitudes extrêmes.
Une attente exceptionnellement longue peut augmenter la moyenne même si l’expérience de la plupart des clients change peu.
Moyenne mobile
Une moyenne mobile calcule la moyenne des observations dans une fenêtre qui se déplace, ce qui lisse les fluctuations à court terme tout en conservant les changements plus lents.
Une fenêtre de sept jours atténue un cycle hebdomadaire lorsque chaque ligne représente un jour observé consécutif.

N

Normalisation par colonne
La normalisation par colonne divise chaque cellule d’un tableau par le total de sa colonne, de sorte que la somme des proportions vaut un dans chaque colonne non vide.
Dans un tableau région-canal, elle montre de quelles régions proviennent les commandes de chaque canal.
Normalisation par ligne
La normalisation par ligne divise chaque cellule d’un tableau par le total de sa ligne, de sorte que la somme des proportions vaut un dans chaque ligne non vide.
Dans un tableau région-canal, elle montre la répartition des commandes entre les canaux dans chaque région.
Notebook
Un notebook est un document qui réunit des cellules de code exécutables, leurs sorties enregistrées et du texte explicatif dans une analyse ordonnée.
Le code calcule un indicateur, tandis que la cellule Markdown voisine explique la décision qu’il éclaire.
Noyau
Un noyau est le processus en cours d’exécution qui exécute le code d’un notebook et conserve les variables en mémoire entre les exécutions de cellules.
Une variable peut rester disponible après la suppression de la cellule qui la définit, jusqu’au redémarrage du processus.
Nuage de points
Un nuage de points place un point par observation en utilisant deux variables quantitatives comme coordonnées, révélant la forme de leur relation et les combinaisons inhabituelles.
Un graphique des températures et des locations montre une relation positive qui se stabilise aux températures élevées.

P

Paradoxe de Simpson
Le paradoxe de Simpson se produit lorsqu’une comparaison globale inverse le sens observé au sein de chaque sous-groupe parce que leurs contributions ont des poids différents.
Des proportions inégales de cas faciles et difficiles peuvent inverser une comparaison globale entre deux services.
Période incomplète
Une période incomplète ne couvre qu’une partie d’un intervalle calendaire désigné : son total dépend donc d’un plus petit nombre de jours ou d’heures observés.
Un total mensuel arrêté au douzième jour nécessite un ajustement de couverture avant d’être comparé à des mois complets.
Perturbation aléatoire (jitter)
Une perturbation aléatoire est un petit déplacement à l’affichage qui sépare les points superposés, notamment sur les échelles discrètes, sans modifier les valeurs mesurées.
Les points correspondant à une même note sont légèrement dispersés pour rendre leur concentration visible dans un diagramme en points par catégorie.
Point de pourcentage
Un point de pourcentage est une unité d’écart absolu entre des pourcentages, distincte d’une variation relative en pourcentage calculée avec une valeur de référence.
Un taux qui passe de 4 % à 5 % augmente de 1 point de pourcentage et de 25 % par rapport à sa valeur initiale.
Provenance
La provenance est l’ensemble des informations sur les données d’entrée et l’historique de traitement d’une analyse, notamment les sources, les versions, les dates, les filtres et les paramètres.
Une date d’extraction et une version des données d’entrée relient le graphique présenté aux données qui l’ont produit.

R

Rapport statique
Un rapport statique présente des résultats d’analyse enregistrés dans un format lisible, comme HTML, sans demander au lecteur d’exécuter Python.
Le rapport communique les résultats, tandis que le notebook et l’environnement permettent de retrouver les calculs.
Recommandation
Une recommandation propose une action fondée sur des éléments et une interprétation ; elle dépend d’hypothèses sur la manière dont cette action aidera.
Ajouter du personnel le soir exige une raison de penser qu’un changement d’effectifs agira sur la régularité observée des retards.
Rééchantillonnage
Le rééchantillonnage regroupe des enregistrements indexés dans le temps en périodes définies et applique une agrégation, comme un effectif mensuel ou une moyenne quotidienne.
Les effectifs mensuels de commandes exigent des dates converties et une vérification que les enregistrements représentent des commandes individuelles.
Règle métier
Une règle métier est une vérification fondée sur le fonctionnement du processus mesuré, comme un ordre d’événements ou un intervalle de mesure autorisé.
Une durée écoulée négative est une erreur même lorsqu’un score statistique de détection des valeurs aberrantes ne la repère pas.
Reproductibilité
La reproductibilité est la capacité d’obtenir les mêmes résultats en réexécutant une analyse avec les mêmes données, le même code, les mêmes paramètres et les mêmes logiciels.
Un collègue utilise la version des données d’entrée et l’environnement consignés pour reproduire les médianes des groupes présentées.
Résultat
Un résultat est un énoncé étayé qui répond à une question d’analyse en précisant l’ampleur, la population et la période de la régularité observée.
Une affirmation sur les livraisons en retard précise la proportion, le nombre de commandes et les dates qui l’étayent.

S

Saisonnalité
La saisonnalité est une régularité récurrente liée à un cycle, comme le jour de la semaine ou le mois de l’année, qui influence les comparaisons entre périodes.
Comparer le même mois d’une année à l’autre peut réduire l’effet d’un cycle annuel récurrent de la demande.
Score z
Un score z exprime la distance signée d’une observation à la moyenne en unités d’écart-type, selon la définition de dispersion choisie.
Un score positif élevé désigne une valeur bien supérieure à la moyenne, même si l’effet de masquage peut réduire ce score.
Score z modifié
Un score z modifié rapporte la distance à la médiane à l’écart absolu médian, en utilisant un facteur de 0,6745 ; il exige un écart absolu médian non nul.
Le seuil usuel de 3,5 en valeur absolue peut repérer une valeur extrême que le score z ordinaire manque.
Segment
Un segment est un sous-ensemble défini par une catégorie, une classe numérique ou une période, qui permet de comparer une distribution ou un taux entre groupes.
Des classes de distance permettent à un analyste de comparer les durées de service pour des trajets courts, moyens et longs.
Superposition des points
La superposition des points se produit lorsque les observations se cachent les unes les autres sur un graphique, masquant les effectifs, les concentrations ou les régularités dans les zones denses.
La transparence ou une représentation des effectifs par classe facilite la distinction entre les zones denses et peu denses.

T

Tableau de contingence
Un tableau de contingence compte les observations pour les combinaisons de deux variables qualitatives, ce qui permet de calculer des proportions au sein des groupes ou dans l’ensemble.
Un tableau région-canal peut décrire la répartition des canaux par région ou la répartition des régions par canal.
Tableau des effectifs et des fréquences
Un tableau des effectifs et des fréquences liste les catégories avec leurs effectifs ou leurs proportions, en précisant la population qui sert de dénominateur.
Un tableau d’évaluations distingue la proportion parmi les personnes ayant répondu de celle calculée sur toutes les lignes de l’enquête.
Tau de Kendall
Le tau de Kendall mesure la liaison entre les rangs en comparant les paires d’observations concordantes aux paires discordantes selon leur ordre pour deux variables.
Les paires ordonnées dans le même sens contribuent à montrer une liaison positive dans les données classées.
Taux
Un taux divise un nombre d’événements par les occasions ou la durée d’observation correspondantes, en précisant la population, la période et la disponibilité des résultats.
Pour une ville, le nombre de commandes en retard divisé par celui des commandes dont la durée de livraison est enregistrée donne la proportion de retards parmi les résultats connus.
Taux de base
Un taux de base décrit la part d’un groupe ou la fréquence d’un événement dans une population de référence et fournit une base pour juger de sa représentation.
Une région qui représente 40 % des réclamations mais 25 % des commandes est surreprésentée parmi les réclamations par rapport à sa taille.
Type de données
Un type de données décrit la façon dont les valeurs sont stockées et les opérations que le logiciel prend en charge ; il diffère de leur sens dans l’analyse.
Un identifiant de compte qui ressemble à un nombre doit être traité comme un libellé même lorsque pandas le stocke comme un entier.

U

Unité d’observation
L’unité d’observation est la personne, l’événement, l’article ou toute autre entité représentée par une ligne ; elle détermine ce que mesure un nombre de lignes.
Une table comportant une ligne par colis compte les colis, même lorsque plusieurs colis appartiennent à la même expédition.

V

Valeur aberrante
Une valeur aberrante est une observation éloignée de la majeure partie des données selon une règle et un contexte précisés, dont la cause doit être examinée.
Une livraison effectuée un jour de tempête et vérifiée à la source peut être extrême tout en faisant réellement partie de la performance du service.
Valeur de référence
Une valeur de référence est la valeur utilisée comme base d’une comparaison, notamment comme dénominateur d’une hausse ou d’une baisse relative.
Un écart de 8 minutes représente environ 27,6 % par rapport à 29 minutes : il faut donc préciser la valeur de référence.
Validité
La validité signifie qu’une valeur enregistrée respecte les règles d’intervalle ou de catégorie autorisés pour la variable qu’elle représente.
Une proportion enregistrée à 140 % enfreint une règle selon laquelle le pourcentage doit être compris entre zéro et 100.
Variable médiatrice
Une variable médiatrice se trouve sur le chemin causal entre deux variables et transmet une partie de l’influence proposée de l’une sur l’autre.
Distingue une variable située sur le chemin causal proposé d’une cause commune qui précède les deux variables.
Variable qualitative nominale
Une variable qualitative nominale répartit les observations en catégories sans ordre naturel ; les calculs arithmétiques sur leurs codes n’ont donc pas de sens utile.
Les libellés de région restent des catégories lorsqu’un système source les stocke sous les nombres 1, 2 et 3.
Variable qualitative ordinale
Une variable qualitative ordinale possède des catégories qui suivent un ordre pertinent, lequel doit rester visible dans les indicateurs et les graphiques de sa distribution.
Un graphique de satisfaction conserve les catégories faible, moyenne et bonne dans l’ordre de l’échelle, même si bonne a l’effectif le plus élevé.

W

Winsorisation
La winsorisation écrête les observations extrêmes à des seuils choisis ; elle modifie les valeurs tout en conservant les enregistrements et exige une règle documentée.
Un rapport indique le centile d’écrêtage et son effet au lieu de présenter les valeurs modifiées comme les données d’origine.

À propos de cette unité

Par StudeliSignaler une erreur

Crée ton propre Matériel d'Étude

Transforme tes notes, diapos et documents en Guides d'Étude, Questions Pratiques, Flashcards et 6 autres outils.

Commencer