cassionAnalyse de données

Retour à la leçonLeçon 5 sur 8Compter des personnes

Portée, couverture, et les personnes comptées douze fois

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 / 18

    Ce que couvre cette leçon

    • Trois questions qui n'en font qu'une en apparence
    • Le cumul qui fabrique des personnes
    • Dédoublonner entre les mois, quand c'est possible
    • La portée n'est pas la couverture, et la différence est le dénominateur
    • Les cumuls dans les propositions
    • Lequel a sa place dans votre cadre logique
    • La suite
    Notes du présentateur
    Trois indicateurs qui sonnent tous comme « combien de personnes avons-nous aidées », et la série mensuelle qui transforme 4 200 enfants en 50 000 dès que quelqu'un additionne la colonne.
  2. Diapositive 2 / 18

    Trois questions qui n'en font qu'une en apparence

    • La portée — combien de personnes distinctes ont reçu quelque chose, sur une période énoncée.
    • Le volume de services — combien de services ont été délivrés. Supérieur à la portée dès que quelqu'un revient.
    • La couverture — quelle part de ceux qui en avaient besoin l'ont reçu. Exige un dénominateur et seule elle dit si…
    Notes du présentateur
    « Combien de personnes le programme a-t-il aidées ? » a trois réponses, et une proposition, un rapport bailleur et un taux de couverture en exigent chacun une différente. Les noms sont employés indifféremment en pratique, et c'est ainsi qu'un programme rapporte 50 000 enfants atteints dans un district qui en compte 4 200.
  3. Diapositive 3 / 18

    Le cumul qui fabrique des personnes — En Python

    monthly = (
        muac.assign(month=muac["screening_date"].dt.strftime("%Y-%m"))
        .groupby("month")
        .agg(screenings=("child_id", "size"),
             distinct_children=("child_id", "nunique"))
    )
    monthly["cumulative_naive"] = monthly["screenings"].cumsum()
    
    print(monthly)
    print("sum of monthly counts:  ", monthly["screenings"].sum())
    print("distinct children, year:", muac["child_id"].nunique())
    Notes du présentateur
    Voici le mécanisme, et c'est de loin la manière la plus courante dont ce secteur surévalue son travail.
  4. Diapositive 4 / 18

    Le cumul qui fabrique des personnes — En R

    monthly <- muac |>
      mutate(month = format(screening_date, "%Y-%m")) |>
      summarise(screenings = n(), distinct_children = n_distinct(child_id), .by = month) |>
      arrange(month) |>
      mutate(cumulative_naive = cumsum(screenings))
    
    c(sum_of_months = sum(monthly$screenings),
      distinct_year = n_distinct(muac$child_id))
  5. Diapositive 5 / 18

    Le cumul qui fabrique des personnes

    CorrectFaux
    Portée mensuelle, janvierpersonnes distinctes en janvier—
    Portée annuellepersonnes distinctes sur l'annéesomme des douze décomptes mensuels
    Portée cumulée à ce jourpersonnes distinctes depuis le débuttotal courant des décomptes mensuels
    Notes du présentateur
    Sur ce registre, les deux se trouvent proches, car il s'agit d'une campagne à un seul passage et peu d'enfants ont été dépistés deux fois. C'est l'exception. Dans un programme mensuel — soins thérapeutiques ambulatoires, transfert monétaire, formation sanitaire — un bénéficiaire apparaît chaque mois où il reçoit quelque chose, et douze décomptes mensuels additionnés font douze fois une charge de cas stable. L'arithmétique qui dérape.
  6. Diapositive 6 / 18

    Le cumul qui fabrique des personnes

    • Une portée cumulée ne se calcule que sur des données au niveau de la personne — Si votre rapportage est fait d'agrégats…
    Notes du présentateur
    Une portée cumulée ne se calcule que sur des données au niveau de la personne. Si votre rapportage est fait d'agrégats mensuels, vous ne pouvez pas dédoublonner entre les mois, et le chiffre annuel honnête n'est pas disponible — il faut soit le dire, soit rapporter le mois maximal plutôt que la somme.
  7. Diapositive 7 / 18

    Le cumul qui fabrique des personnes — En Python

    annual_reach = muac["child_id"].nunique()
    service_volume = len(muac)
    print(f"reach {annual_reach:,} children; {service_volume:,} screening events")
  8. Diapositive 8 / 18

    Le cumul qui fabrique des personnes — En R

    c(reach = n_distinct(muac$child_id), volume = nrow(muac))
  9. Diapositive 9 / 18

    Dédoublonner entre les mois, quand c'est possible — En Python

    first_contact = (
        muac.sort_values("screening_date")
        .drop_duplicates(subset=["child_id"], keep="first")
        .assign(month=lambda d: d["screening_date"].dt.strftime("%Y-%m"))
    )
    new_by_month = first_contact.groupby("month").size()
    print(new_by_month.cumsum())
  10. Diapositive 10 / 18

    Dédoublonner entre les mois, quand c'est possible — En R

    first_contact <- muac |>
      arrange(screening_date) |>
      distinct(child_id, .keep_all = TRUE) |>
      mutate(month = format(screening_date, "%Y-%m"))
    
    first_contact |> count(month) |> arrange(month) |> mutate(cumulative = cumsum(n))
    Notes du présentateur
    Compter chaque personne dans le mois de son premier contact donne une série cumulée qui monte jusqu'à la vraie portée sans jamais la dépasser. Cela produit aussi un nombre de gestion réellement utile — les nouveaux bénéficiaires par mois, qui distingue un programme qui croît d'un programme qui sert les mêmes personnes à répétition. Rapportez toujours les deux — nouveaux ce mois-ci et total servi ce mois-ci. Ils répondent à des questions différentes et chacun seul induit en erreur.
  11. Diapositive 11 / 18

    La portée n'est pas la couverture, et la différence est le dénominateur — En Python

    reached = muac["child_id"].nunique()
    under5_population = 21500      # from the administrative frame, projected
    
    print(f"screening coverage: {reached / under5_population:.1%}")
    Notes du présentateur
    La portée compte qui vous avez servi. La couverture dit quelle fraction de ceux qui avaient besoin du service l'ont reçu, et c'est la seule des trois qui puisse dire qu'un programme est insuffisant.
  12. Diapositive 12 / 18

    La portée n'est pas la couverture, et la différence est le dénominateur — En R

    c(coverage = n_distinct(muac$child_id) / 21500)
  13. Diapositive 13 / 18

    La portée n'est pas la couverture, et la différence est le dénominateur

    • Admissions sur charge attendue n'est pas la couverture — Diviser les enfants admis en traitement par la charge que vous…
    • Une portée rapportée à une population n'est pas non plus une couverture — sauf si cette population est la population…
    Notes du présentateur
    Deux erreurs à éviter, toutes deux assez fréquentes pour avoir un nom. Admissions sur charge attendue n'est pas la couverture. Diviser les enfants admis en traitement par la charge que vous attendiez dit la qualité de votre prévision, non la part des enfants malnutris que vous avez atteinte. La vraie couverture exige le nombre d'enfants malnutris, qui exige une enquête — d'où l'existence des enquêtes de couverture comme méthodologie distincte. Une portée rapportée à une population n'est pas non plus une couverture, sauf si cette population est la population dans le besoin. Dépister 4 200 des 21 500 moins de cinq ans est une couverture de dépistage. Cela ne dit rien de la part des enfants malnutris qui ont été trouvés.
  14. Diapositive 14 / 18

    Les cumuls dans les propositions

    • Énoncez le niveau de dédoublonnage. « Individus uniques, dédoublonnés à l'intérieur de l'année, non entre années »…
    • N'additionnez jamais la portée entre secteurs. Un ménage recevant de l'eau, de la nourriture et un service de…
    • Dites quand vous ne pouvez pas. « Les chiffres agrégés ne sont pas dédoublonnés entre partenaires ; la portée…
    Notes du présentateur
    Les propositions pluriannuelles demandent « les personnes atteintes sur la durée du projet », et c'est là que le double comptage devient un sujet de conformité plutôt que de méthode. Trois règles qui le maintiennent honnête.
  15. Diapositive 15 / 18

    Lequel a sa place dans votre cadre logique

    Si la ligne porte surEmployez
    L'effort et le coût du programmeLe volume de services
    Les personnes serviesLa portée, avec le niveau de dédoublonnage énoncé
    La suffisance de la réponseLa couverture, avec un dénominateur fondé sur les besoins
    L'achèvement par ceux qui commencentUn taux d'achèvement ou d'abandon
  16. Diapositive 16 / 18

    Lequel a sa place dans votre cadre logique

    La portée dit ce que vous avez fait. La couverture dit si c'était suffisant. Un rapport qui n'a que la première est une description d'activité, et tout lecteur le sait.
    Notes du présentateur
    La dernière ligne est la plus souvent absente, et elle est fréquemment la plus informative — la leçon sur la théorie du changement l'a montré avec l'abandon de 13,8 % entre penta1 et penta3, qu'aucun chiffre de portée ou de couverture n'aurait révélé.
  17. Diapositive 17 / 18

    La suite

    • Presque tout indicateur de cette leçon possède déjà une définition officielle publiée par quelqu'un — UNICEF, OMS, le cluster, le cadre des ODD.
    Notes du présentateur
    Presque tout indicateur de cette leçon possède déjà une définition officielle publiée par quelqu'un — UNICEF, OMS, le cluster, le cadre des ODD. La leçon suivante montre comment la trouver, l'adopter, et dire précisément où la vôtre s'en écarte.
  18. Diapositive 18 / 18

    La suite

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