Leçon 8 sur 8
Unité · Juger un programme
Pourquoi admissions sur charge attendue n'est pas la couverture
Le chiffre que la plupart des programmes rapportent comme couverture est le rapport de deux choses dont aucune n'est le nombre d'enfants malnutris. Ce qu'exige réellement la couverture, et quoi rapporter quand on ne peut pas l'estimer.
Le chiffre que tout le monde rapporte
Quelque part dans presque tout rapport PCIMA figure une ligne de ce genre.
Couverture du programme : 68 %
et en dessous, si l’on cherche, le calcul.
admissions during the period / expected caseload for the period
La charge attendue est elle-même calculée, en général ainsi.
population under five x GAM prevalence x incidence correction x coverage target
UNDER_FIVE = 21500
GAM_PREVALENCE = 0.149 # from the SMART survey
INCIDENCE_CORRECTION = 1.6 # new cases arising over the year
COVERAGE_TARGET = 0.50
expected = UNDER_FIVE * GAM_PREVALENCE * INCIDENCE_CORRECTION * COVERAGE_TARGET
admissions = 1100
print(f"expected caseload {expected:,.0f}; admissions {admissions:,}; "
f"'coverage' {admissions / expected:.0%}")
expected <- 21500 * 0.149 * 1.6 * 0.50
c(expected = expected, ratio = 1100 / expected)
Ce nombre n’est pas la couverture. Il vaut la peine d’être précis sur ce qu’il est, car il n’est pas inutile — il ne correspond simplement pas à son étiquette.
Ce qu’il mesure réellement
La couverture est une proportion — enfants traités sur enfants ayant besoin de traitement. La formule ci-dessus n’a ni l’un ni l’autre.
Le numérateur, ce sont des admissions, non des enfants. Un enfant réadmis après rechute compte pour deux admissions. La leçon sur la portée du cours sur les indicateurs faisait ce constat en général ; ici il gonfle le numérateur du taux de rechute.
Le dénominateur est une prévision, non un décompte. Chacun de ses termes est une estimation — la population d’une projection de recensement, la prévalence d’une enquête avec son propre intervalle, la correction d’incidence d’une valeur de la littérature, et la cible de couverture d’une proposition. Multipliez quatre estimations et le produit porte les quatre incertitudes.
La cible de couverture est au dénominateur. Regardez-la à nouveau. Un programme visant 50 % de couverture divise par la moitié de la charge, si bien qu’atteindre la cible se lit 100 %. La mesure est construite pour atteindre 100 % quand le plan est tenu, ce qui en fait un taux de réalisation du plan — un indicateur de gestion parfaitement raisonnable, sous un nom qui ne lui convient pas.
without_target = admissions / (UNDER_FIVE * GAM_PREVALENCE * INCIDENCE_CORRECTION)
print(f"ratio without the coverage target in the denominator: {without_target:.0%}")
1100 / (21500 * 0.149 * 1.6)
Retirez la cible et le même programme affiche la moitié du chiffre. Rien du programme n’a changé.
Ce qu’exige la couverture
La définition n’est pas contestée. La couverture est ceci.
children with SAM currently in the programme
------------------------------------------------
children with SAM in the population
et le dénominateur ne peut venir que de la recherche d’enfants malnutris dans la population qui ne sont pas dans le programme. Aucun registre ne peut le fournir, puisqu’un registre ne contient que les enfants qui sont venus.
C’est pourquoi les enquêtes de couverture existent comme méthodologie distincte. Les standards actuels — SQUEAC, SLEAC et leurs successeurs — font exactement cela : recherche active de cas dans la communauté, puis classement de chaque cas trouvé comme dans ou hors du programme.
# What a coverage survey produces, and a register never can
cases_found = 84
cases_in_programme = 39
print(f"point coverage: {cases_in_programme / cases_found:.0%}")
c(point_coverage = 39 / 84)
Deux mesures de couverture sont en usage et elles répondent à des questions différentes.
- La couverture ponctuelle — cas actuellement dans le programme, sur cas trouvés. Convient à un programme aux épisodes de traitement courts.
- La couverture de période — cas dans le programme ou récemment déchargés guéris, sur cas trouvés. Convient aux épisodes plus longs et crédite le programme des enfants déjà guéris.
Dites laquelle. Elles diffèrent de plusieurs points et les deux s’appellent couverture.
La question des barrières est la moitié utile
L’estimation d’une enquête de couverture est un nombre à intervalle large. Son autre produit est souvent plus actionnable — pour chaque cas trouvé et absent du programme, on demande à l’accompagnant pourquoi.
Les réponses se regroupent et renvoient à des remèdes différents.
- Ignorait que l’enfant était malnutri — dépistage et sensibilisation communautaire.
- Ignorait l’existence du programme — mobilisation.
- Distance, coût, temps — décentralisation, qui est aussi la cause d’abandon de la leçon précédente.
- Refusé précédemment — un problème de critère d’admission, et la leçon 4 explique comment un enfant peut être refusé sur une mesure tout en étant malnutri selon une autre.
- Stigmatisation, ou mauvaise expérience antérieure — qualité des soins.
barriers = pd.DataFrame({
"barrier": ["Did not know child was malnourished", "Distance",
"Did not know programme existed", "Previously rejected",
"Carer unavailable"],
"cases": [17, 12, 8, 5, 3],
})
barriers["share"] = barriers["cases"] / barriers["cases"].sum()
barriers <- tibble::tribble(
~barrier, ~cases,
"unaware child malnourished", 17,
"distance", 12,
"unaware of programme", 8,
"previously rejected", 5,
"carer unavailable", 3
)
Rapportez les barrières même quand l’estimation de couverture est trop imprécise pour être employée. Quarante-cinq entretiens ne peuvent pas fixer une couverture à cinq points près et peuvent parfaitement dire que la moitié des cas manqués relèvent d’un problème de dépistage plutôt que d’accès, et ces deux-là n’ont pas le même budget.
Quoi rapporter sans enquête de couverture
C’est-à-dire la plupart du temps, car une enquête de couverture coûte un argent dont le programme ne dispose généralement pas. Trois options honnêtes, et aucune ne consiste à réétiqueter le rapport.
Rapportez le taux de réalisation du plan, correctement nommé. « Les admissions ont atteint 68 % de la charge planifiée pour la période » est vrai, utile pour l’approvisionnement, et n’affirme rien sur les enfants qui ne sont jamais venus.
Rapportez les admissions face aux cas incidents attendus, hypothèses énoncées. Retirez la cible de couverture du dénominateur, listez les quatre entrées et leurs sources, et étiquetez-le comme une estimation de la portée du programme face au besoin attendu.
Employez le rapport routine-enquête. La dernière leçon du cours DHIS2 a décomposé l’écart entre un registre de dépistage et une enquête ; cet écart est un signal indirect sur qui le programme ne voit pas, et il est gratuit.
report = pd.DataFrame({
"indicator": ["Admissions", "Expected incident cases", "Plan achievement",
"Coverage"],
"value": [1100, 5126, "21%", "not estimated"],
"note": ["episodes, not children",
"population x prevalence x incidence correction; three estimates",
"admissions / expected incident cases",
"requires active case-finding in the community"],
})
tibble::tribble(
~indicator, ~value, ~note,
"Admissions", "1,100", "episodes, not children",
"Expected incident cases", "5,126", "three stacked estimates",
"Plan achievement", "21%", "admissions / expected",
"Coverage", "not estimated", "requires a coverage survey"
)
C’est la dernière ligne qui compte. « Non estimée » est un constat, et c’est une bien meilleure ligne de rapport qu’un nombre qui sera cité pendant trois ans comme quelque chose qu’il n’est pas.
Ce que ce cours vous laisse
Vous savez mesurer un enfant, calculer un score z selon les normes de l’OMS, appliquer les définitions de cas y compris la clause que tout le monde oublie, dire où les deux critères d’admission divergent et pourquoi, produire un rapport de plausibilité SMART et décider si une enquête est croyable, produire une prévalence avec un intervalle et la lire au regard des phases IPC, calculer la performance PCIMA sur le dénominateur que Sphere spécifie, et dire honnêtement ce que votre programme sait et ne sait pas de sa couverture.
C’est le métier de l’analyste nutrition, et c’est le premier des six cours sectoriels du module 4.
Vient ensuite dans le module Santé publique et épidémiologie appliquée — incidence, prévalence, cascades et couverture pour le VIH, la tuberculose, le paludisme et la vaccination, ainsi que la courbe épidémique qu’il faudra peut-être tracer dans l’urgence. Il s’exécute sur l’extraction vaccinale que ce programme emploie depuis le module 2, et il démarre là où s’arrêtent les dénominateurs de ce cours — sur les personnes-temps, le dénominateur qui donne son sens à l’incidence.