Problem
A US local political campaign at the county level needed precinct-level targeting — where to door-knock, where to spend on local ads, which voter segments to focus on. The campaign had voter-file data, demographic snapshots, and turnout history but no one to turn it into operating decisions.
Approach
Built propensity and turnout models at the precinct level using voter-file data combined with public demographic and historical-turnout signals. Identified which precincts had high-yield persuadable voters vs. high-yield turnout targets vs. low-yield (skip). Output as a prioritised door-knock and ad-spend list for the field team, with weekly refreshes during the campaign cycle.
Stack
Python · scikit-learn · Pandas / NumPy · geospatial joins · voter-file ETL
Outcome
The field team stopped allocating effort uniformly across the county and started concentrating on the precincts where the model said marginal effort would actually shift the result. The biggest finding was negative: a meaningful share of precincts where the campaign had been spending door-knock effort had vanishingly small persuadable populations — those hours got reallocated to higher-yield areas.