This is my submission for the final project in HES CSCI 116 "Dynamic Modeling and Forecasting in Big Data."
Some of the raw data is too large to upload, so all data that is not queried via API is linked below instead. The processed ridership data and some intermediate engineered features are included.
The notebooks outline the steps, rationale, and code used for the analysis and to create the figures. Run them in order to reproduce my report.
You must install all third-party and local dependencies to run the code. I recommend using uv:
git clone https://github.com/eordo/cta-ridership-dynamics.git
cd cta-ridership-dynamics
uv sync
uv pip install -e .Ridership and geographical data are open data provided by the City of Chicago. Weather data is queried through Meteostat and ultimately provided by the NOAA. Demographic data is queried from the ACS 5-year estimates.
Ridership
Geography
- City boundaries
- Community Area boundaries
- Census Tract boundaries
- Bus routes
- Bus stops
- "L" lines
- "L" stations
Weather
Demographics
Getting the ACS data requires a US Census API key.
Save the key in a .env file in the project root like so:
export CENSUS_API_KEY=your_key_here