Вы находитесь на странице: 1из 156

GTFS_Schedules_20150930 - Version 3

This workbook is intended to use typical schedule data to generate GTFS records.

Sample data is supplied to help with the learning curve. You will need to replace all the data on most of the sheets t

Follow the format in the sample:


Schedule "regions" are bounded by blank rows
The first column, "Column A" (Routes), should be blank except when a new route (schedule re
First row of region:
Bus Route{:Unique Route Name or Number} aka TripPrefix
TripPrefix + the time column name (e.g. T01) defines the trip_id
Enter a shape_id (if any) to be used with each trip on the first row in each time column
You may use different shape_id values in the time columns (trips) - useful for partial routes
Enter wheelchair and bike flags in first row - applies to all trips
If a block_id is needed add it as a suffix to the shape_id: e.g. R1a:R1a-T02 uses shape_id
Second+ row of region
Create N rows of arrival times - always use the cell format (Ctrl-1) - Time: 13:30:50 or Cust
The first time row, and last time row, of a schedule region must have time values en
Enter time for known timed stops.
If a time is entered stop_times.timepoint will be set to 1 unless timepoint column is
Enter '*' to create a stop_times record w/o arrival_time (calculated by GT)
time values before midnight should be entered w/o a date
arrivals past midnight must be entered as on the date 1/1/1900 e.g. 1/1/1900 12:1
wait_times that result in a departure past mid-night are not supported, manual edit
Last Row: a blank row should follow the last row

Enter your schedule data in the the Schedules V3 sheet then use the Generate stop_times and trips macro
When you have generated the stop_times and trips records you can copy/paste to the ImportExport XLS tool.
You can use ImportMergeXLS feature of the ImportExport tool to transfer the generated data - only the matching sh
Macros:

(CLICK ON BUTTON to invoke macro)


Check stop_id on Schedules tab againest local_stops tab - QA test, optionally copies n
Generate stop_time, trips, and timed_stops data (replaces existing data)
Generate Timed Stops Schedule
Use for desk check QA to balance Schedules tab

Worksheets:
Notes
Schedules V3
stop_times
trips
local_routes (opt)
local_calendar (opt)
local_stops (opt)
timed_stops (report)

this sheet
User entered schedule data - Version 2 Format
generated data to be transferred to the GT feed spreadsheet, ImportExport XLS
generated data to be transferred to the GT feed spreadsheet, ImportExport XLS
User entered route data in GT format - should be an Identical copy of the main GT file - not n
User entered calendar data in GT format - should be an Identical copy of the main GT file - no
User entered stops data in GT format - should be an Identical copy of the main GT file - not ne
Generated schedule in typical layout for only the timed stops - not need to generate stop_time

Utility:

Import data from other Schedules.xls (V2 or V3) or ImportExport.xls file


Clear calculated data from stop_times, trips, and timed_stops (done automatically on e

V3 Changes:

9/11/2015 Added timepoint to stop_times; added wheelchair & bikes to trips; (and added associated colu
9/11/2015 Generate stop_times sets the schedule timepoint flag = 1 if a time is present and a 0 is not alr
Genrate timed stops has option to alter the schedule timed_stop flag to be equal to the timepo
9/29/2015 Fixed timepoint logic. If flag is preset it is copied to stop_times. If missing, and time present, ti
9/30/2015 Fixed timed stops report minor issue

e data on most of the sheets to match your agency.

when a new route (schedule region) is begun New route e.g. Bus Route:R1a

row in each time column


ips) - useful for partial routes for day begin and day end

R1a:R1a-T02 uses shape_id R1a and assigns 'R1a-T02' to the block_id for the trip

rl-1) - Time: 13:30:50 or Custom [h]:mm:ss


gion must have time values entered.

1 unless timepoint column is polulated


e (calculated by GT)

e 1/1/1900 e.g. 1/1/1900 12:15:00 AM


re not supported, manual edit will be required in stop_times

imes and trips macro


ImportExport XLS tool.
ed data - only the matching sheet names will transfer

QA test, optionally copies names from Local_stops tab


existing data)
QA to balance Schedules tab againest published data

mportExport XLS
mportExport XLS
py of the main GT file - not need to generate stop_times and trips
l copy of the main GT file - not need to generate stop_times and trips
opy of the main GT file - not need to generate stop_times and trips, used for QA
ot need to generate stop_times and trips, very helpful to QA the schedules data

xport.xls file
ps (done automatically on each use of Generate stop_times and trips)

s; (and added associated columns in Schedules V3)


me is present and a 0 is not already present
p flag to be equal to the timepoint flag
f missing, and time present, timepoint is set to 1 in stop_times (and the schedule)

route_id

Routes

Route:route
prefix a loop to include stop 38 on Prado .road
.Bus
Shape
R2a includes
This first bus route is a bit confusing. R2 is a m

Copied to tripMust
records.
be inThe
firstmacro
column,
also
alluses
cells this
below
column
should
to be
define
blank
which
until you
direction_
.get
Shape
drops
the Prado Rd loop and adds stop 991R1 makes two loops through the Downtown Tra
.rows to evaluate
to theR2b
next Bus
Route
route_id
service_id
id
trip_headsign
stop_id
when a single shape was used that included th
The macro looks
Route
in each
prefxtime
is combined
bucket columns
with the(T01,
trip bucket
T02, etc.)
name
and
(row
creates
1) to
.each using one of the loops. Then a block_id w
stop_times records
build a by
trip_id
going down the rows until a blank is encounter in
.route_id then it moves to the next time bucket and repeats
Comment rows may follow as long as the cells in columns A and B are
.empty

on Prado .road
This first bus route is a bit confusing. R2 is a more typical route

shape_id:block_id
arrival_time

.You
can
First
use
and
different
last time
shapes
for trip
forare
differe
re
pickup_ drop_off timed_
wait_t
s stop 991R1 makes two loops through the Downtown Transit Center. Google Transit was having problems
.stops
stop_desc
stop_headsign
type
_type
stop
ime
when a single shape was used that included the two loops so the overall route was spit into two trips
block_id is optional
.Use * to create a stop_time rec
.each using one of the loops. Then a block_id was added to link the two loops
.Blank cells are ignored

shape_id:block_id
arrival_time

wheelcha

.You can
First
use
and
different
last time
shapes
for trip
forare
different
required,
tripsoptional on non-timed
ir_acces
bikes_a
.stops timepoint
sible
llowed
T01
block_id is optional
.Use * to create a stop_time record w/o arrival_time
.Blank cells are ignored

T02

T03

T04

T05

T06

T07

T08

T09

T10

T11

T12

T13

T14

T15

T16

T17

T18

T19

T20

T21

T22

T23

T24

T25

T26

T27

T28

T29

T30

T31

T32

T33

T34

T35

T36

T37

T38

T39

T40

T41

T42

T43

T44

T45

T46

T47

T48

T49

T50

T51

T52

T53

T54

T55

T56

T57

T58

T59

T60

T61

T62

T63

T64

T65

T66

T67

T68

T69

T70

T71

T72

T73

T74

T75

T76

T77

T78

T79

T80

T81

T82

T83

T84

T85

T86

T87

T88

T89

T90

T91

T92

T93

T94

T95

T96

T97

T98

T99

T100

T101

T102

T103

T104

T105

T106

T107

trip_id

arrival_time

departure_time

stop_id

stop_sequence

stop_headsign

pickup_type

drop_off_type

shape_dist_traveled

timepoint

route_id

service_id trip_id

trip_headsign direction_id

block_id

shape_id

wheelchair_accessible bikes_allowed

route_id

agency_id

route_short_name route_long_name

route_desc route_type

route_url

route_color

route_text_color

service_id monday tuesday


mtwtf
1
mtwtfs
1
mtwt
1
fs
0
ss
0
sat
0
sun
0

1
1
1
0
0
0
0

wednesdaythursday friday
1
1
1
1
1
1
0
0
0
0
0
0
0
0

saturday
1
1
0
1
0
0
0

sunday
0
1
0
1
1
1
0

0
0
0
0
1
0
1

start_date end_date
20000101 20100101
20000101 20100101
20000101 20100101
20000101 20100101
20000101 20100101
20000101 20100101
20000101 20100101

* notes
sample data
sample data
sample data
sample data
sample data
sample data
sample data

stop_id stop_code

stop_name

stop_desc

Used to QA stop_id data entered on


Schedules tab. Optionally the stop_name
.is copied to Schedules during QA

stop_lat

stop_lon

zone_id

stop_url

location_ty parent_statstop_timezwheelchair_boarding