Как сказал @ChickenSoups, вы пытаетесь отфильтровать файлы остановок с полем route_id, а в этом тексте нет этого поля.
Поля, в которых есть остановки:
stop_id, stop_name, stop_lat, stop_lon, stop_code, location_type, parent_station, wheelchair_boarding, stop_direction
Возможно, что вам нужно прочитать файл Trips.txt вместо Stops.txt, так как в этом файле есть поле route_id
. И вы можете выполнить sh это с помощью функции readTrips:
const readTrips = require("gtfs-utils/read-trips");
И ваш gtfsFun c будет:
function gtfsFunc() {
console.log("Processing started...");
const readFile = (name) => {
return readCsv("./gtfsdata/" + name + ".txt").on("error", console.error);
};
//I used 5200 because your Trips.txt contains routes id with this value
const filterTrips = (t) => t.route_id === "5200";
readTrips(readFile, filterTrips).then((stops) => {
console.log("filtered stops", stops);
const someStopId = Object.keys(stops)[0];
const someStop = stops[someStopId];
console.log("someStop", someStop);
});
}
Или, если вы действительно хотите прочитать Stops. txt, вам просто нужно изменить свой фильтр
const filter = t => t.route_id === 'M4'
, чтобы использовать какое-либо допустимое поле, например:
const filter = t => t.stop_name=== 'M4'