Exercice · Débutant
Lire cet export sans le casser
Un CSV, six défauts, et une lecture qui doit tous les survivre. Écrivez l'appel read_csv et les quatre contrôles qui prouvent qu'il a fonctionné, puis dites ce que chaque défaut aurait coûté.
Chaque défaut de cet exercice se trouve dans le fichier que vous avez déjà. Aucun ne lève d’erreur. Tous changent un chiffre.
Le fichier
muac-screening-artibonite-2024.v1.csv — 4 218 enregistrements de dépistage de
douze communes de l’Artibonite, en Haïti. Synthétique, et de la même forme que le
fichier réel.
La tâche
Écrivez un seul appel read_csv, plus ce qui doit le suivre, produisant un
DataFrame où :
muac_mmne contient aucune valeur signifiant « non mesuré »child_idetcommunesont du texte, non des nombresscreening_dateest un datetime, analysé avec un format expliciteoutcomeest une catégorielle au vocabulaire déclaréoedemaest un booléen nullable —True,Falseou manquant, jamais une chaîne- le nombre de lignes fait l’objet d’une assertion, pour qu’un fichier tronqué échoue au lieu de rapporter une charge de cas plus faible
Écrivez ensuite les quatre contrôles de la leçon 3 — forme, types, manquants, première ligne — et exécutez-les.
Ce qu’il faut rendre
Un seul fichier Python qui s’exécute de haut en bas et affiche :
- le PB moyen avant et après la déclaration de la sentinelle
- le nombre d’enregistrements exclus par chacune des six décisions ci-dessus
- le nombre de valeurs de
outcometombées hors de votre vocabulaire déclaré - le nombre de valeurs de
oedemaque votre table booléenne n’a pas couvertes
Les questions à traiter en prose
Trois phrases chacune. Ce sont elles, l’exercice ; le code n’est que le moyen d’y arriver.
1. Le PB moyen se déplace quand vous déclarez la sentinelle. De combien, dans quel sens, et pourquoi le chiffre faux est-il plus difficile à repérer qu’un chiffre manifestement cassé ?
2. Deux communes ont saisi les œdèmes en Y/N plutôt qu’en true/false.
Si vous aviez converti cette colonne avec astype(bool) au lieu d’établir une
correspondance, que serait devenu chaque "false", et qu’est-ce que cela aurait
fait au décompte des cas de MAS ?
3. Votre catégorielle outcome a transformé certaines valeurs en manquants.
Lesquelles, combien de lignes, et que doit-il se passer ensuite — est-ce une
décision de nettoyage, une question à poser à qui a saisi les données, ou les
deux ?
Comment savoir que c’est terminé
Une autre personne doit pouvoir exécuter votre fichier sur une copie propre du
dépôt et obtenir les mêmes chiffres affichés. Si votre fichier contient un chemin
commençant par /Users ou C:, ce n’est pas terminé — voir la leçon 2.
Ce que cet exercice n’est pas
Il ne vous demande pas de décider quoi faire des valeurs manquantes. Supprimer, imputer ou rapporter séparément est une décision d’analyse qui relève d’un journal de nettoyage, et Fondamentaux de l’analyse de données la traite. Ici vous vous assurez seulement qu’un code cesse de se faire passer pour une mesure.