# Data quality report

Computed from `data/raw/health_data.csv` by `python src/run_analysis.py`.

- **2,864 observations; 21 columns; 179 countries; 2000–2015.**
- 16 continuous numerical indicators, plus year and two complementary economy flags; country/region are labels.
- 2,864 distinct country-years / 2,864 expected; duplicates: 0.
- Explicit missing cells: 0. Invalid flags/ranges: 0 across documented screening checks.
- The file is already processed. No conclusion about original missingness, imputation or raw-source quality follows from its complete panel.
- Missing JS parsing was corrected from zero coercion to NaN. **No rows in this supplied file change as a result**; the correction protects future inputs.
- Country/region assignment changes: 0; country whitespace issues: 0.
- No obvious aggregate-name labels detected; country labels were manually reviewed. Historical labels (Swaziland, former Yugoslav republic of Macedonia) are preserved and mapped through explicit aliases rather than relabelled silently.
- Unit checks are screening assumptions, not proof of source validity. The two mortality fields overlap; no mortality-share chart is valid.

| Field | Missing | Minimum | Maximum |
|---|---:|---:|---:|
| Country | 0 | — | — |
| Region | 0 | — | — |
| Year | 0 | 2000 | 2015 |
| Infant_deaths | 0 | 1.8 | 138.1 |
| Under_five_deaths | 0 | 2.3 | 224.9 |
| Adult_mortality | 0 | 49.384 | 719.3605 |
| Alcohol_consumption | 0 | 0.0 | 17.87 |
| Hepatitis_B | 0 | 12 | 99 |
| Measles | 0 | 10 | 99 |
| BMI | 0 | 19.8 | 32.1 |
| Polio | 0 | 8 | 99 |
| Diphtheria | 0 | 16 | 99 |
| Incidents_HIV | 0 | 0.01 | 21.68 |
| GDP_per_capita | 0 | 148 | 112418 |
| Population_mln | 0 | 0.08 | 1379.86 |
| Thinness_ten_nineteen_years | 0 | 0.1 | 27.7 |
| Thinness_five_nine_years | 0 | 0.1 | 28.6 |
| Schooling | 0 | 1.1 | 14.1 |
| Economy_status_Developed | 0 | 0 | 1 |
| Economy_status_Developing | 0 | 0 | 1 |
| Life_expectancy | 0 | 39.4 | 83.8 |

## Provenance and definitions

The supplied file was matched one-to-one on all 19 numeric columns (including year) to the publisher download at https://www.kaggle.com/datasets/lashagoch/life-expectancy-who-updated . Every numeric row and region matches; 22 country labels were renamed in the supplied version. This is a numeric-content match, not a byte-identical file. Publisher metadata labels the dataset CC0. The matching is reproduced by `src/verify_source.py`.

Publisher-reported definitions include GDP in current USD, schooling as mean formal-education years for adults aged 25+, vaccination percentages among one-year-olds and HIV incidence per 1,000 aged 15–49. The publisher attributes source fields to World Bank, WHO and Our World in Data; original extractions have not been independently replayed.

The publisher documents three-year-average and regional-average imputation, plus exclusion of countries with extensive missingness. Cell-level imputation flags are absent. **Future information may already be present in the supplied values.** Our temporal split prevents our preprocessing/training leakage, but cannot establish leakage-free upstream data or unbiased prospective performance. GDP is nominal current USD, so growth comparisons are not real purchasing-power changes. Mortality fields are excluded from primary prediction because of their proximity to the target; HIV is also excluded from the primary feature set.

`data_dictionary.csv` documents every field's evidence level. Missingness by country/year, distributions and 1st/99th-percentile extremes are exported separately. Extremes are flagged, not automatically removed.

SHA-256: `505217df809e3ca17e51a96581f0a2bed8ec43d6a2fd405221bdb55f40e57a88`.
