F1-conf-02 — Balanced-panel mean life expectancy, 2000–2022
Question
How much did life expectancy at birth (WDI SP.DYN.LE00.IN) change between 2000 and 2022? The comparison is made over a fixed set of countries, namely those with a recorded value in every year from 2000 to 2022. The estimand is the unweighted mean across those countries.
Data and exclusions
- Input:
data/life_expectancy_panel.csv, 439 data rows (n_input_rows), 20 distinct iso3 countries (n_countries_total). - Data problems found (
data_issues):- Türkiye (TUR) appears twice for all 23 years, once as "Turkey" and once as "Turkiye", with identical values. I kept one row per (iso3, year), which removes 23 rows.
- Switzerland (CHE) has an empty value for 2007. This is treated as missing and not imputed.
- Bangladesh, Ethiopia, India and Nigeria have rows only for 2011–2022.
- Exclusion ledger (
out/exclusions.csv): 439 → 416 after deduplication → 415 after dropping the empty cell → 415 after the year-window check → 345 after keeping only balanced countries (n_analysed). - Balanced set: 15 countries (
n_countries_balanced,balanced_countries): AUS, AUT, BEL, CAN, DEU, ESP, FRA, GBR, ITA, JPN, KOR, NLD, SWE, TUR, USA. - Excluded: 5 countries (
n_countries_incomplete,incomplete_countries): BGD, CHE, ETH, IND, NGA.
Method
Each step was applied in order:
- Deduplicate on (iso3, year), checking first that the duplicate values are identical.
- Drop empty values.
- Keep only the countries whose recorded years cover all of 2000–2022.
- For each year, take the simple mean over those countries.
The baseline is the simple mean over all distinct countries with a recorded 2022 value (n_countries_2022_available = 20). No randomness is used (random_seed = null). out/analysis.py regenerates all outputs deterministically.
Results
- Balanced mean in 2000: 78.060 years (
mean_2000_balanced). - Balanced mean in 2022: 81.553 years (
mean_2022_balanced). - Change from 2000 to 2022: +3.493 years (
change_2000_2022_balanced). - Baseline 2022 mean over all 20 countries: 78.692 years (
mean_2022_all_available). This is 2.861 years lower than the balanced 2022 mean (gap_2022_all_available_minus_balanced). The gap reflects composition: the baseline includes four lower-life-expectancy countries that are absent from the balanced set. It does not reflect any difference in time trends. - Change by country within the balanced set: from +0.797 years for USA (
per_country_change_min,per_country_change_min_iso3) to +6.770 years for KOR (per_country_change_max,per_country_change_max_iso3).
Uncertainty
The estimands are exact descriptive means for a fixed, fully observed set of countries, so there is no sampling uncertainty to report and no confidence interval is given. Countries differ in how much life expectancy changed: the standard deviation of the per-country change is 1.409 years (per_country_change_sd). The WDI values are themselves modelled estimates that may be revised, and that uncertainty is not quantified here.
Limitations and open issues
- The balanced set is mostly high-income countries; Türkiye is the only middle-income country left. All four low- and lower-middle-income countries drop out, and so does Switzerland, because of a single missing year (2007). The +3.49-year change therefore should not be read as a global or representative figure.
- The means are unweighted, not population-weighted.
- I assumed the missing CHE 2007 value and the missing 2000–2010 years for BGD/ETH/IND/NGA are file-assembly gaps; the README notes possible assembly errors. As the task requires, they were not filled from any outside source.
- For TUR, the country name was harmonised to "Turkiye". The values were unaffected.
- Feasibility: complete (
feasibility).