Data audit (P1)
| file | SHA-256 | data rows | cols |
|---|---|---|---|
| data/wb_indicators.csv | 6823f02ed4c20fd12a54b8ca4454f85ba333f22337e2a9fc57c3cabccfdbfcd0 (matches README & bundle.json) | 2349 | 5 |
| data/wb_entities.csv | 06af6aec15122fecea5be5eb21464c505188ecc135bc55104a40f20f65040f8d (matches) | 296 | 5 |
| data/README.md | 76cb5af488d97339fb6319a5c9a7ba6ec98112ab6a0a8116e7bec6acd1f9f67a (matches bundle.json) | – | – |
wb_indicators.csv: iso3 (str), name (str), year (int, 2015–2023, 261 entities × 9 years, balanced), gdp_pc_ppp (float, constant 2021 PPP $, 164 missing, range 992–139,541, all > 0), life_expectancy (float, years, 0 missing, range 18.8–86.4). No duplicated (iso3, year). Every iso3 appears in wb_entities.csv; names agree.
wb_entities.csv: 296 entities, no duplicates, no blanks; 79 have region == "Aggregates" (217 countries/economies). Note: "NA" (Namibia's ISO2) is not an issue because codes are ISO3; pandas default NA parsing is nevertheless disabled for string columns in the script for safety (keep_default_na=False) — no entity has a code/name that would be mis-parsed anyway.
Countries/economies, both indicators observed, by year: 199 in each year 2015–2022, 197 in 2023. Rule (≥150, latest) ⇒ analysis year 2023. In 2023, 217 countries present, 20 lack GDP (ASM, CHI, CUB, ERI, GIB, GUM, IMN, LIE, MAF, MCO, MNP, NCL, PRK, PYF, SSD, SYR, VEN, VGB, VIR, YEM); 0 lack LE ⇒ n_excluded_missing = 20, n_analysed = 197.
Anomalies
- Central African Republic LE is erratic across years (2019 31.5, 2021 40.3, 2022 18.8, 2023 57.4). The 2023 value (57.4) is within the plausible range for CAF and is kept; earlier years are not used. Flagged in data_issues; a leave-out sensitivity is not required, but CAF's leverage is noted.
- West Bank & Gaza (PSE) LE drops 11.5 years in 2023 (conflict); kept as reported.
- Missing GDP is non-random: mostly small high-income territories and conflict/sanctioned states (possible selection bias). Handled by exclusion per rules, discussed in report.
- 2023 LE values for some countries may be WB estimates/projections rather than vital-registration measurements (not verifiable from the files).
Information-availability: no input violates the rules; aggregates are removed via region == "Aggregates". No other files used.