
Classify bus frequency level of service based on HCM
Source:R/classify_frequency_los.R
classify_frequency_los.RdClassify bus frequency level of service based on HCM
Value
data.frame. Input data frame with an additional column frequency_los indicating the LOS classification.
Details
Classifies bus frequency level of service (LOS) based on the Highway Capacity Manual (HCM) 2000 guidelines on "Service Frequency LOS for Urban Scheduled Transit Service" (Exhibit 27-1).
Refer to vignette("classify") for more details on this classification.
Examples
# Subset GTFS for one route only, for demo purposes
gtfs <- GTFShift::load_feed(system.file("extdata/samples",
"gtfs_tcb_sample.zip", package = "GTFShift")
)
gtfs <- GTFShift::filter_by_route_name(gtfs, c("1", "2", "3", "4"))
# Get route frequency
frequency_analysis <- GTFShift::get_route_frequency_hourly(
gtfs,
date = gtfs$calendar$start_date[1]
)
#> Analysing GTFS for 2026-06-10...
#> > Filtering by reference date 2026-06-10...
# Compute LOS
frequency_los = GTFShift::classify_frequency_los(frequency_analysis)
frequency_los |>
sf::st_drop_geometry() |>
dplyr::select(route_id, frequency_los)
#> # A tibble: 6 × 2
#> route_id frequency_los
#> <chr> <chr>
#> 1 3_3-SA-TERM_R2 E
#> 2 3_3-TER-CS_CAS E
#> 3 3_3-TER-SA_CAS E
#> 4 3_3-TER-SA_CAS E
#> 5 3_3-TERM-SA_LC E
#> 6 3_3-TERM-SA_R2 E