When I began using the ACS to analyze demographic changes over time, I ran into two problems that anyone working with this data will eventually encounter:
- The Census API only lets you download data for one year at a time.
- Variables sometimes change meaning across years — silently, with no warning.
I built a module called multiyear to solve both problems. It started as personal tooling for my own projects, but the problems it solved turned out to be common enough that I contributed it to censusdis, a popular Python package for working with the Census API that is downloaded around 5,000 times a month from PyPI.
You can learn more about the module and its origins here:
- ACS Multiyear Analyses — a notebook hosted in the
censusdisrepository demonstrating how to use the current version of the module - censusdis v1.4.0 is now on PyPI — announces the merge into
censusdisand details the changes made to the module as part of joining the package - Using Python to Measure Immigration Trends — describes the initial version of the module, built to analyze immigration trends in a specific location over the course of the ACS
- Creating Time Series Data from the American Community Survey (ACS) — documents the original discovery of the variable-change problem and the first attempt at a solution