Anemia Module
1.0 Overview
This document is the page for the anemia YLDs module of the MNCNH Portfolio simulation. The anemia module will process information related to simulants’ hemoglobin exposure throughtout the course of the simulation and calculate corresponding anemia exposure and YLDs.
2.0 Module Diagram and Data
2.1 Module Diagram
2.2 Module Inputs
Input |
Source module |
Application |
Note |
|---|---|---|---|
First trimester ANC attendance |
Determines anemia YLD calculation equation |
||
Hemoglobin at the start of pregnancy |
Used to calculate anemia YLDs |
||
Hemoglobin at end of pregnancy |
Used to calculate anemia YLDs |
||
Postpartum hemoglobin |
Used to calculate anemia YLDs |
Note that this value will be missing for simulants who did not survive labor |
|
IV iron coverage |
Determines anemia YLD calculation equation |
||
IFA/MMS coverage |
Determines anemia YLD calculation equation |
||
Pregnancy duration |
Used to calculate anemia YLDs |
2.3 Module Decision Nodes
Decision node |
Description |
Information |
Note |
|---|---|---|---|
1 |
Received IFA/MMS? |
Yes if IFA/MMS coverage input value == True |
|
2, 4, 5 |
Received IV iron |
Yes if IV iron coverage input value == True |
|
3 |
Attended first trimester ANC visit |
Yes if first trimester ANC attendance input value == True |
2.4 Module Action Points
We assume that hemoglobin may vary throughout the course of pregnancy/postpartum at the following distinct points opportunities: (1) following IFA/MMS supplementation at the first trimester ANC visit, (2) following IFA/MMS supplementation or IV iron administration at the later pregnancy ANC visit, and (3) following an incident case of maternal hemorrhage during labor, which will persist through the end of the postpartum period. Therefore, we will calculate YLDs due to anemia during pregnancy in this model as a weighted sum over the course of pregnancy stratified by these specified events.
Note that simulants who died during labor should not experience any YLDs due to anemia in the postpartum period. In other words, \(\text{DW}(\text{hgb}^\text{pp}_i) * \text{duration}^\text{pp} = 0\) for these simulants.
Equation |
Value |
Note |
|---|---|---|
I |
\(\text{DW}(\text{hgb}^\text{start}_i) * \text{duration}^\text{preg}_i + \text{DW}(\text{hgb}^\text{pp}_i) * \text{duration}^\text{pp}\) |
No interventions in pregnancy |
II |
\(\text{DW}(\text{hgb}^\text{start}_i) * T^\text{first trimester}_i + \text{DW}(\text{hgb}^\text{birth}_i) * (\text{duration}^\text{preg}_i - T^\text{first trimester}_i) + \text{DW}(\text{hgb}^\text{pp}_i) * \text{duration}^\text{pp}\) |
Received IFA/MMS and/or IV iron at later pregnancy visit |
III |
\(\text{DW}(\text{hgb}^\text{start}_i) * T^\text{later pregnancy}_i + \text{DW}(\text{hgb}^\text{birth}_i) * (\text{duration}^\text{preg}_i - T^\text{later pregnancy}_i) + \text{DW}(\text{hgb}^\text{pp}_i) * \text{duration}^\text{pp}\) |
Received IFA/MMS at first trimester visit, no IV iron |
IV |
\(\text{DW}(\text{hgb}^\text{start}_i) * T^\text{first trimester}_i + \text{DW}(\text{hgb}^\text{start}_i + \text{shift}^\text{IFA/MMS}) * (T^\text{later pregnancy}_i - T^\text{first trimester}_i) + \text{DW}(\text{hgb}^\text{birth}_i) * (\text{duration}^\text{preg}_i - T^\text{later pregnancy}_i) + \text{DW}(\text{hgb}^\text{pp}_i) * \text{duration}^\text{pp}\) |
Received IFA/MMS at first trimester visit, IV iron at later pregnancy visit |
Parameter |
Value |
Source/Note |
|---|---|---|
\(\text{DW}(\text{hgb})\) |
Function that returns the anemia disability weight for a given hemoglobin level. Note that as written this function will need to be able to handle simulants who have died in the intrapartum component and did not progress to the postpartum period (i.e. return zero for these simulants) |
See the anemia impairment document for anemia hemoglobin thresholds (use the pregnancy-specific values) and disability weights |
\(\text{hgb}^\text{start}_i\) |
Hemoglobin exposure at the start of pregnancy for individual simulant |
|
\(\text{hgb}^\text{birth}_i\) |
Hemoglobin exposure at birth for individual simulant |
|
\(\text{hgb}^\text{pp}_i\) |
Postpartum hemoglobin for individual simulant |
Postpartum hemoglobin module. Note that there are some simulants who will not survive to the postpartum period and will have undefined postpartum hemoglobin. |
\(\text{duration}^\text{preg}_i\) |
Pregnancy duration in years for individual simulant |
Pregnancy II module, note a unit conversion to years may be necessary |
\(\text{duration}_\text{pp}\) |
6 * 7 / 365.25 |
We track six weeks of postpartum anemia YLDs |
\(\text{shift}_\text{IFA/MMS}\) |
Effect of IFA/MMS on hemoglobin |
|
\(T^\text{first trimester}_i\) |
Uniform distribution between 8/52 and 12/52 (8 to 12 weeks, represented as a fraction of a year) |
Randomly sample a different value for each simulant |
\(T^\text{later pregnancy}_i\) |
Uniform distribution between 12/52 and \(\text{duration}^\text{pregnancy}_i - 2/52\) |
Randomly sample a different value for each simulant |
2.4: Module Outputs
Output |
Value |
Dependencies |
|---|---|---|
Anemia YLDs |
Point value |
Simulation result |
3.0 Assumptions and limitations
We assume that first trimester ANC visits occur uniformly between 8 weeks (earliest appointments) and 12 weeks (end of first trimester) of gestation
We assume that later pregnancy ANC visits occur uniformly between 12 weeks (end of first trimester) and two weeks prior to the time of birth
We assume that interventions affect anemia YLDs at the time of administration at ANC (as according to the timed assumptions in the two prior bullets) with no additional delay
We only track anemia YLDs for six weeks postpartum
4.0 Verification and Validation Criteria
Baseline simulated anemia YLDs should match corresponding pregnancy-specific GBD values. Run the following command to load the data from GBD 2023:
get_outputs(
location_id=[165,179,214],
topic='rei',
rei_id=[206,206,207], # We also have rei_id=192 for all anemia and rei_id=432 for moderate and severe combined
population_group_id=16,
sex_id=2,
year_id=2023,
release_id=16, # release_id=33 also works
compare_version_id=8306,
measure_id=[3,5],
age_group_id=[7, 8, 9, 10, 11, 12, 13, 14, 15, 24, 169]
)
Note
Make sure you have the latest version of db_queries to be able to use the population_group_id argument. To get pregnancy-specific results, the population group and the age groups need to be specified, because the default is all ages.
As of the time of writing (July 2025), we can only use population_group_id=16 with get_outputs(). There were a few EPIC/COMO runs with pregnancy this GBD round, which are noted in the tracking HUB page.