Difference-in-Differences: Conflict Impact on Agricultural Output#
This notebook is used to visualize the results of a DiD conducted to estimate the impact of conflict on agricultural yield in Ehtiopia during the Tigray and Amhara conflicts.
Assumptions & Design Decisions#
Dependent variable: log(EVI) — the log of Enhanced Vegetation Index, a satellite-derived measure of vegetation greenness used as a proxy for agricultural productivity.
Identification strategy: Two-way fixed effects (entity + time) panel regression with a binary DiD interaction term (treated_post = NewConflict × Post_t).
Conflict classification:
Non-violent event types (Protests, Strategic developments) are dropped from the conflict data before classification.
Regions are classified as New Conflict (treated) if they had low/no conflict pre-treatment and exceeded the conflict threshold post-treatment.
Regions with consistently low conflict (both pre and post) are classified as No/Low Conflict (control).
Regions with persistent or reduced conflict are excluded — they don’t fit the DiD design.
Default metric:
nrFatalitieswith threshold 10 (Tigray) and 15 (Amhara).
Clustering: Regions are grouped into 3 climate-similar clusters using K-means on LST, rainfall, and elevation (equal weights, 0.33 each). EVI is excluded from clustering to avoid endogeneity. Crop season data is not used in clustering as it is a consequence of climate, not a driver.
Covariates: log(rainfall_mm + 0.001) and log(lst_max + 0.001) — both have direct causal pathways to EVI. Crop area is excluded as EVI measures vegetation greenness, not agricultural output per se. Elevation is time-invariant and absorbed by entity fixed effects.
Standard errors: Entity-clustered to account for within-region serial correlation.
Parallel trends: Assessed visually using monthly in-season log(EVI) with regression lines, and statistically using a pre-trend slope equality t-test.
All months are used in the regression — time fixed effects absorb seasonality, so off-season months contribute power without introducing bias.
Experimental Setup#
Tigray Model#
Any reference to Tigray, or Tigray war throughout this notebook refers to all the four regions mentioned here from the following dates
Treatment date: November 1, 2020 (onset of Tigray War)
Pre-period: ~2010 – October 2020
Post-period: November 2020 – November 2022
End date: November 30, 2022
Geographic scope: Tigray, Afar, Oromia, Amhara
Conflict metric: nrFatalities, threshold = 10
Amhara Model#
Any reference to Amhara, or Amhara war throughout this notebook refers to all the four regions mentioned here from the following dates
Treatment date: April 1, 2023 (Amhara conflict escalation)
Pre-period: ~2010 – March 2023
Post-period: April 2023 – December 2026
End date: December 31, 2026
Geographic scope: Amhara, Oromia
Conflict metric: nrFatalities, threshold = 15
Clustering#
3 clusters per war, based on LST + rainfall + elevation (equal weights)
Clustering period: 2012–2022 (Tigray), 2012–2026 (Amhara)
Insights#
Control and Treatment Groups#
Clustering of ADM3 locations into smaller groups with similar climatic conditions was done using k-means clustering based on land surface temperature, elevation, and rainfall conditions in the adm3 locations from 2012-2025. 3 clusters were identified for the Amhara war and 3 for the Tigray war. The DiD was run along these clusters along with running it for all the treatment and control adm3 regions in all of the Amhara and Tigray war affected regions.
It can be seen that the maximum lst in Cluster 2 of Tigray is much higher than the other two clusters, at a much lower median elevation and significantly lower rainfall. This could be indicative of the drought conditions that persisted in Tigray during the Tigray war.
============================================================
Tigray — Average climate characteristics by cluster
============================================================
n_adm3 elevation_mean lst_max_mean rainfall_mean n_treated n_control
cluster
0.0 334 2080.68 36.43 86.78 78 256
1.0 144 1967.27 31.98 130.56 25 119
2.0 79 1052.32 45.06 53.13 30 49
============================================================
Amhara — Average climate characteristics by cluster
============================================================
n_adm3 elevation_mean lst_max_mean rainfall_mean n_treated n_control
cluster
0.0 81 1586.56 39.16 74.80 32 49
1.0 184 2261.65 34.67 98.86 91 93
2.0 111 1975.27 31.10 132.79 13 98