Explore the feasibility and impact of expanding free RTA bus lines in Massachusetts.
We plan on doing this by ranking bus stops based on area's average income level, population and the amount of revenue a bus stop generates.
Install rtc_transit_equity locally. For example, call the following code snippet from within the directory transit-equity
:
pip3 install -r requirements.txt
pip3 install .
If you have difficulty installing Rtree or xlrd, please see the rtree docs for installation assistance.
We pulled data using the following datasets:
After pulling this data, we preprocess it to feature engineer our internal csv files. To pull the data and preprocess simply run the following code:
from rtc_transit_equity import generate
data = generate()
The above code will generate a data folder and populate it with the necessary datasets. The variable data will be a dictionary containing all our significant datasets. You may view Strategic Questions on example usage. Subsequent calls to generate will use the local file cached results. You can circumvent these local cache files by using the following code snippet:
from rtc_transit_equity import generate
data = generate(regenerate=True)
Contains 2018 census population data. Original data source can be found here.
- COUNTY - County FIPS code
- DATE_CODE - Date
- DATE_DESC - Description of date values
- DENSITY - Population density as of July 1 of the vintage year only
- POP - Population
- GEONAME - Geographic Name
- STATE - State FIPS code
Contains 2018 American Community Survery (ACS) 2018 total population census data for MA. Original data source can be found here.
- B01003_001E - Population
- tract - Census tract code
Caontains ridership data for every RTA in MA. Original data source can be found here.
- 5 digit NTD ID - The Transit Property’s NTD identification number in the Next Generation NTD Database.
- Agency - Name of the RTA.
- Service Area Property - The population of the area served by the property, as reported by the transit property.
- Active - Indicates whether a property reports (active) or not (inactive) during the most recent Annual report year.
- Passenger Miles FY - Total number of miles traveled by all passengers forthe most recent closed-out annual report year.
- Unlinked Passenger Trips FY - Total number of boarding passengers for the most recent closed-out annual report year.
- Fares FY - The fare revenues collected during the most recent closed-out annual report year.
- Operating Expenses FY - Total cost for operating this RTA for the most recent closed-out annual report year.
- Average Cost per Trip FY - The ratio of Total Operating Expenses per Unlinked Passenger Trips
- Average Fares per Trip FY - The ratio of Fares Earned per Unlinked Passenger Trips.
Contains all RTA bus routes in MA. Original data source can be found here.
- OBJECTID - Id of the route as an object from the datasource.
- shape_id - Id of the route geometry shape.
- agency_id - Id of the agency which corresponds to each RTA.
- route_id - Id of each bus route.
- route_short_name - The name (i.e. route 11) of the bus route.
- route_long_name - A more descriptive name of the bus route (i.e. VA Hospital via Belmont).
- route_url - Url with more information on the bus route.
- Angecy - Name of RTA that the route belongs to.
- ShapeSTLength - Length of the bus route geomtry line.
Contains all RTA bus stops with the census tract that it is part of and the correspoding census tract median household income. Original data source for bus stops can be found here, census income data here, and census population data here.
- geometry - Geometry point (containing the latitude and longitude) of the bus stop.
- OBJECTID - Id of the bus stop as an object from the datasource.
- stop_id - Id of each bus stop.
- stop_name - Descriptive name of the bus stop (i.e. Belair St at Colonel Bell Drive).
- stop_lat - Bus stop latitude, which is extracted from the geometry column for easier access.
- stop_lon - Bus stop longitude, which is extracted from the geometry column for easier access.
- stop_url - Url with more information on the bus stop.
- Agency - Name of the RTA that the stop belongs to.
- census_tract - The census tract that the bus stop is in.
- median_household_income - Median household income (in 2017 inflation-adjusted dollars) for the census tract that the bus stop is in.
- county - The county number that the bus stop is in.
- population - The population of the census tract that the bus stop is in.
Contains a mapping for each RTA bus stop to a RTA bus route. This is needed as an intermediate step to join the bus stops, routes, and income together. No new attributes are introduced in this file.
The result of joining all datasets together. This csv file contains RTA bus stops, corresponding bus routes, census tract median household income, and census tract population. No new attributes are introduced in this file. We use this file for creating Tableau visualizations and analyzing the strategic questions.
Can be found here.
-
What bus routes and stops, if made free, would most benefit low income riders in Massachusetts?
-
Which towns and districts would most benefit by a policy change to the fare change to these routes?
-
What would the cost be to the MBTA and regional transit authorities for each proposed bus route/stop/zones based on ridership and fare costs?
-
What would the cost be to make an entire regional transit area free and how would this compare?
We answer these questions in our final report, and also here: Strategic Questions.