cassionAnalyse de données

Retour à la leçonLeçon 4 sur 8Ce qui voyage avec le nombre

Le panneau qui a attrapé un nombre faux dans ce cours

Le même diaporama que les téléchargements, rendu sous forme de page. Lancez le diaporama pour le présenter en plein écran — les flèches ou un clic avancent d'une diapositive, Échap quitte.

Diapositives · PDFDiapositives · PowerPoint

  1. Diapositive 1 / 22

    Ce que couvre cette leçon

    • Ce qui s'est passé
    • Pourquoi c'est la documentation qui avait raison
    • Ce que contient une entrée de définition
    • Où vit le panneau
    • La vérification que le panneau rend possible
    • La dispute que cela prévient chaque mois
    • Rapportez-le en entier
    • La suite
    Notes du présentateur
    Deux artefacts de cette plateforme ont calculé la couverture en eau améliorée depuis le même fichier et obtenu 82,3 % et 79,7 %. La documentation technique avait raison et la leçon avait tort, et rien d'autre qu'un panneau de définitions et un second calcul ne l'aurait trouvé.
  2. Diapositive 2 / 22

    Ce qui s'est passé — En Python

    # What the lesson had
    IMPROVED = {
        "piped-into-dwelling", "piped-into-yard", "public-tap",
        "borehole", "protected-well", "protected-spring",
    }
    Notes du présentateur
    Le projet EAH porte un document de définitions d'indicateurs depuis sa rédaction. Il énonce la couverture en eau améliorée à 82,3 % et le service de base à 56,3 %, avec le numérateur, le dénominateur et le standard de chacun. La leçon du cours EAH, la figure commitée et la première version du tableau de bord du projet disaient toutes 79,7 % et 54,7 %.
  3. Diapositive 3 / 22

    Ce qui s'est passé — En R

    # What the JMP definition actually lists
    improved <- c("piped-into-dwelling", "piped-into-yard", "public-tap",
                  "borehole", "protected-well", "protected-spring",
                  "tanker-truck")     # packaged or delivered water
  4. Diapositive 4 / 22

    Ce qui s'est passé

    • La liste améliorée du JMP inclut l'eau conditionnée ou livrée — c'est-à-dire tanker-truck dans ce jeu de données
    • Rien ne l'a détecté pendant des mois — La leçon était cohérente avec elle-même, la figure s'accordait avec la leçon…
    Notes du présentateur
    La liste améliorée du JMP inclut l'eau conditionnée ou livrée, c'est-à-dire tanker-truck dans ce jeu de données. La leçon l'avait omise — dans un cours qui nomme explicitement l'échelle JMP et l'ODD 6.1.1 — et sous-estimait la couverture améliorée de 2,6 points et le service de base de 1,6. Rien ne l'a détecté pendant des mois. La leçon était cohérente avec elle-même, la figure s'accordait avec la leçon parce qu'elle employait le même ensemble, les tests passaient, et le nombre était plausible. Cela a surgi le jour où un second artefact a calculé le même indicateur depuis le même fichier et n'était pas d'accord.
  5. Diapositive 5 / 22

    Pourquoi c'est la documentation qui avait raison — Exemple

    ### 2.1 Improved source
    
    | Numerator   | Households whose main drinking water source is piped, borehole,
    |             | protected well, protected spring, rainwater or packaged water
    | Denominator | All surveyed households
    | Value       | 0.823
    | Valid at    | Household, community, district
    | Standard    | WHO/UNICEF JMP service ladders
    Notes du présentateur
    Parce qu'elle énonçait la définition au lieu de l'implémenter.
  6. Diapositive 6 / 22

    Pourquoi c'est la documentation qui avait raison

    • Écrire « ou eau conditionnée » en prose l'a rendue vérifiable contre le standard — Un ensemble Python de six chaînes ne…
    • C'est tout l'argument en faveur du panneau — Ce n'est pas la documentation du code — c'est la spécification que le code…
    Notes du présentateur
    Écrire « ou eau conditionnée » en prose l'a rendue vérifiable contre le standard. Un ensemble Python de six chaînes ne se lit comme rien ; un numérateur écrit en phrase peut être comparé à la définition qu'il prétend implémenter. C'est tout l'argument en faveur du panneau. Ce n'est pas la documentation du code — c'est la spécification que le code est censé satisfaire, écrite sous une forme qu'un spécialiste du secteur peut auditer sans lire de Python.
  7. Diapositive 7 / 22

    Ce que contient une entrée de définition

    ChampExemple
    NumérateurMénages avec une source améliorée et un trajet aller-retour de 30 minutes ou moins
    DénominateurTous les ménages enquêtés
    Valeur0,563
    Valide àMénage, communauté, district
    StandardÉchelles de service JMP ; ODD 6.1.1
    Décision éclairéeQuelles communautés reçoivent la réhabilitation
    Notes du présentateur
    Six champs, et les deux derniers sont ceux qui manquent d'ordinaire.
  8. Diapositive 8 / 22

    Ce que contient une entrée de définition

    • « Valide à » prévient le mésusage le plus courant — Un nombre calculé au niveau district et cité au niveau communauté…
    • « Décision éclairée » est ce qui justifie l'existence de l'indicateur — La documentation EAH écrit « Aucune
    Notes du présentateur
    « Valide à » prévient le mésusage le plus courant. Un nombre calculé au niveau district et cité au niveau communauté est la même arithmétique répondant à une autre question, et énoncer le niveau est ce qui l'arrête. « Décision éclairée » est ce qui justifie l'existence de l'indicateur. La documentation EAH écrit « Aucune. Reporté pour que le rapport puisse montrer ce qui a changé » face à la couverture améliorée — entrée d'une honnêteté inhabituelle et exactement juste : le chiffre est conservé pour quantifier un écart, non pour être employé.
  9. Diapositive 9 / 22

    Où vit le panneau

    OùCe qu'il contient
    Sur le tableau de bordUne proposition par tuile — « améliorée et à 30 min ou moins »
    Dans la documentation techniqueL'entrée complète, six champs, par indicateur
    Dans le codeUn commentaire nommant le standard et la raison
    Notes du présentateur
    Trois endroits, et ce ne sont pas des alternatives.
  10. Diapositive 10 / 22

    Où vit le panneau — En Python

    # The JMP improved list, which includes packaged or delivered water —
    # `tanker-truck` here. Omitting it understates improved coverage by 2.6
    # points and disagrees with the project's own indicator documentation.
    IMPROVED = {...}
  11. Diapositive 11 / 22

    Où vit le panneau — En R

    # The comment is what makes the next reader check rather than assume.
  12. Diapositive 12 / 22

    Où vit le panneau

    • La proposition de la tuile est ce que voit un lecteur ; le document est ce que lit un contestataire ; le commentaire…
    Notes du présentateur
    La proposition de la tuile est ce que voit un lecteur ; le document est ce que lit un contestataire ; le commentaire est ce qu'édite le prochain analyste. Les trois, ou les trois dérivent.
  13. Diapositive 13 / 22

    La vérification que le panneau rend possible

    • Calculez l'indicateur deux fois, depuis des codes différents, et comparez — C'est ce qui a trouvé l'erreur ici, et…
    Notes du présentateur
    Calculez l'indicateur deux fois, depuis des codes différents, et comparez. C'est ce qui a trouvé l'erreur ici, et c'est une vérification qu'on peut faire délibérément plutôt que par accident.
  14. Diapositive 14 / 22

    La vérification que le panneau rend possible — En Python

    from_pipeline = summary["basic_service"]
    from_documentation = 0.563          # the value the definition panel states
    assert abs(from_pipeline - from_documentation) < 0.001, (
        f"pipeline {from_pipeline:.3f} disagrees with the definition panel"
    )
  15. Diapositive 15 / 22

    La vérification que le panneau rend possible — En R

    stopifnot(abs(basic_service - 0.563) < 0.001)
  16. Diapositive 16 / 22

    La vérification que le panneau rend possible

    • Une valeur énoncée dans le panneau de définitions est un jeu d'essai — Une fois que le panneau porte le nombre, toute…
    • Et quand ils divergent, décidez lequel fait autorité avant d'en changer un — Ici le standard a tranché : le JMP liste…
    Notes du présentateur
    Une valeur énoncée dans le panneau de définitions est un jeu d'essai. Une fois que le panneau porte le nombre, toute chaîne qui le calcule autrement échoue bruyamment — c'est la règle du cours sur les chaînes reproductibles arrivant là où personne ne l'attend. Et quand ils divergent, décidez lequel fait autorité avant d'en changer un. Ici le standard a tranché : le JMP liste l'eau livrée, donc la documentation avait raison et quatre autres artefacts ont été corrigés pour s'aligner.
  17. Diapositive 17 / 22

    La dispute que cela prévient chaque mois

    « La couverture vaut 82 %. » — « Nous avons rapporté 76 % le trimestre dernier. » — « C'était une autre définition. » — « Laquelle est la bonne ? »
  18. Diapositive 18 / 22

    La dispute que cela prévient chaque mois

    • Les deux sont bonnes et ce sont des indicateurs différents — Sans panneau, cette conversation prend vingt minutes…
    • Les trois désaccords les plus courants de ce secteur — tous réglés par un panneau :
    • Source contre service — Source améliorée, 82,3 %
    • Population du numérateur contre celle du dénominateur — Un taux brut de scolarisation de 109,2 % est un dénominateur…
    • Dépistage contre enquête — Un taux de dépistage n'est pas une estimation de prévalence, et le tableau de bord nutrition…
    Notes du présentateur
    Le panneau de définitions d'indicateurs existe à cause d'une réunion récurrente précise. Les deux sont bonnes et ce sont des indicateurs différents. Sans panneau, cette conversation prend vingt minutes chaque trimestre et n'est jamais tranchée ; avec un panneau, elle prend le temps d'ouvrir le document. Les trois désaccords les plus courants de ce secteur, tous réglés par un panneau : Source contre service. Source améliorée, 82,3 %. Service de base, 56,3 %. Vingt-six points, et les deux sont justes. Population du numérateur contre celle du dénominateur. Un taux brut de scolarisation de 109,2 % est un dénominateur projeté, non plus d'enfants qu'il n'en existe. Dépistage contre enquête. Un taux de dépistage n'est pas une estimation de prévalence, et le tableau de bord nutrition d'ici le dit dans sa propre section « ce que cette page ne montre pas ».
  19. Diapositive 19 / 22

    Rapportez-le en entier — Exemple

    Indicator definitions
    
      Full definitions in docs/indicator-definitions.md: numerator, denominator,
      the level it is valid at, the standard applied, and the decision it
      informs, for each of the nine indicators in this report.
    
      Each dashboard tile carries the definition compressed to one clause.
    
      The pipeline asserts its computed values against the values stated in the
      definitions document. A disagreement fails the build rather than reaching
      a report.
    
      Change log: 2026-07-29, improved source corrected from 79.7% to 82.3%.
      Delivered water (tanker truck) was omitted from the JMP improved list.
      The definitions document had it right; the analysis code did not.
  20. Diapositive 20 / 22

    Rapportez-le en entier

    • L'entrée du journal des modifications est la partie à copier — Un indicateur qui a changé de définition exige une ligne…
    Notes du présentateur
    L'entrée du journal des modifications est la partie à copier. Un indicateur qui a changé de définition exige une ligne datée disant ce qui a changé et dans quel sens, sans quoi toute comparaison avec un rapport antérieur est silencieusement fausse.
  21. Diapositive 21 / 22

    La suite

    • Le tableau de bord répond à une question.
    Notes du présentateur
    Le tableau de bord répond à une question. Le rapport est là où la réponse se discute, et la leçon suivante porte sur la rédaction d'un rapport dont les constats, les limites et la recommandation peuvent être lus séparément — parce qu'ils le seront.
  22. Diapositive 22 / 22

    La suite

    Lire la leçon complète, avec le code exécutable Retour à la leçon