À l'issue de ce TP, vous aurez découvert

Présentation des nouveautés sur la branche de ce TP

Récupérer la branche du TP :

git checkout 2_start_tp_pandera

Les nouveautés sur cette branche sont les suivantes :

Dans votre terminal, avec le bon environnement activé lancer la commande

pip install -r requirements.txt

Cette commande vérifie que tout est bien installé, et installe notamment panderas

Observer le module source/domain/entities/customer_data_schema

Nous avons pré-défini un ensemble de validation en utilisant Pandera notamment DataFrame Model.

Dans la suite, nous souhaitons définir les vérifications inhérentes à la colonne income, voici ce que vous
devez faire :

  1. Déclarer la colonne income (vous pouvez inspirer de la déclaration des autres colonnes)
  2. Vérifier bien que le type de la colonne est bien celui qui est attendue dans les données brutes
  3. Ajouter un check custom pour vérifier à chaque fois que la valeur est compris entre 0 et 100000 (vous pouvez vous
    inspirer du check sur la colonne education)
  4. Ajouter la validation sur la méthode source.domain.usecase.prepare_data grâce au décorateur @pa.check_input(RawCustomerSchema)
  5. Dans le swagger, faire un train pour vérifier les données : il n'y a pas d'erreur.
  6. Dans le swagger, faire un predict avec un income à -10 : observer les logs
  7. Remplacer le decorator @pa.check_input par @validate_input, celui là filtrera les erreurs de l'input

Explorer les autres vérifications possibles à mettre en place.

Les instructions du TP suivant sont ici