Как создать фид GTFS_RT из фальшивого фида AVL в формате csv

Я пытаюсь создать GTFS Realtime Feed из данных AVL, которые предоставляет транзитное агентство. Дело в том, что между официальными данными GTFS и этим набором данных AVL нет никакой связи.

Данные о положении и задержке транспортного средства находятся в URL /gps_full.txt и обновляются каждые 5-7 секунд. Формат данных следующий:

TransportType,RouteShortName,TransitId,VehicleNumber,Longitude,Latitude,Speed,Azimuth,TripStartTime,DeviationInSeconds,MeasurementTime,VehicleType,
Bus,20,9790770943,7031,25206880,54644738,0,232,583,0,39179,KZ,
Trolleybus,6,9733751022,1681,25279878,54687890,0,18,622,93,39175,KZ,

Единственный первичный ключ, о котором я мог подумать, это составной ключ (RouteShortName,TripStartTime), но я не уверен, не вызовет ли это некоторые коллизии.

Есть ли лучший способ сделать это? Может быть, у кого-то была такая же проблема с данными из других транзитных агентств и могли бы указать мне на некоторые ресурсы?

Я пытался самостоятельно искать ресурсы, но, похоже, почти у всех была какая-то связь между каналами AVL и статическими данными GTFS.

Вся помощь будет принята с благодарностью.

1 ответ

Если на самом деле нет идентификаторов, которые позволяют вам связываться с GTFS, лучшее, что вы можете сделать, - это угадать, по какому маршруту / маршруту находится каждое транспортное средство.

TheTransitClock (версия Transitime с открытым исходным кодом, которая продолжает обновляться и поддерживаться) - это проект, который пытается сделать это: https://github.com/TheTransitClock/transitime. Я никогда не использовал это сам.

Однако, если вы знаете маршрут и время начала поездки, то вы можете определить запланированное путешествие (например, если путешествие началось в 09:00, посмотрите расписание GTFS для поездок по этому маршруту, начиная с 09:00). Логика для этого может быть довольно сложной (и, по сути, вероятностной) - это, по сути, упрощенная версия того, что делает TheTransitClock. Я вижу, что ваши данные содержат TripStartTime поле, хотя я не понимаю единицы.

Возможно, самым простым подходом было бы связаться с транспортным агентством и спросить, могут ли они добавить идентификаторы отключения GTFS к данным AVL.

Другие вопросы по тегам