frequencies_to_stop_times {gtfstools} | R Documentation |
Convert frequencies to stop times
Description
Creates stop_times
entries based on the frequencies specified in the
frequencies
table.
Usage
frequencies_to_stop_times(gtfs, trip_id = NULL, force = FALSE)
Arguments
gtfs |
A GTFS object, as created by |
trip_id |
A character vector including the |
force |
Whether to convert trips specified in the |
Value
A GTFS object with updated frequencies
, stop_times
and trips
tables.
Details
A single trip described in a frequencies
table may yield multiple trips
after converting the GTFS. Let's say, for example, that the frequencies
table describes a trip called "example_trip"
, that starts at 08:00 and
stops at 09:00, with a 30 minutes headway.
In practice, that means that one trip will depart at 08:00, another at 08:30
and yet another at 09:00. frequencies_to_stop_times()
appends a "_<n>"
suffix to the newly created trips to differentiate each one of them (e.g. in
this case, the new trips, described in the trips
and stop_times
tables,
would be called "example_trip_1"
, "example_trip_2"
and
"example_trip_3"
).
Examples
data_path <- system.file("extdata/spo_gtfs.zip", package = "gtfstools")
gtfs <- read_gtfs(data_path)
trip <- "CPTM L07-0"
# converts all trips listed in the frequencies table
converted_gtfs <- frequencies_to_stop_times(gtfs)
# converts only the specified trip_id
converted_gtfs <- frequencies_to_stop_times(gtfs, trip)
# how the specified trip_id was described in the frequencies table
head(gtfs$frequencies[trip_id == trip])
# the first row of each equivalent stop_times entry in the converted gtfs
equivalent_stop_times <- converted_gtfs$stop_times[grepl(trip, trip_id)]
equivalent_stop_times[equivalent_stop_times[, .I[1], by = trip_id]$V1]