-
Постов
4814 -
Зарегистрирован
-
Посещение
-
Победитель дней
7
Тип контента
Профили
Форумы
Календарь
Сообщения, опубликованные Trotil
-
-
В ЯТ в последнее время долгое ожидание машины - бывает и 5-10 минут, при этом стоимость поездки они не снижают.
Я иногда пользуюсь этим сервисом, когда очень спешу, но оно стало "дорого" и "долго". И поэтому я порой отказываюсь, не забывая указывать причину отказа - "слишком долго ждать".
10 минут - я за это время дождусь автобуса, на который опоздал, или вообще проеду часть пути или ещё что.
Так что для коротких поездок (до 10 км) ЯТ стало совсем неадекватным сервисом. На длинные ещё терпимо и по стоимости более-менее нормально выходит.
- 1
-
А это составы, которые с утра колбасило:
Здесь задержка на полчаса на Марьиной Роще на полчаса в 11:30
Затем рассосалось, но те поезда, которые попали в замес, нагнать своё время уже не смогли за день.
А 6816 поезд не мцд-шный, он в 11:30 был совсем в другом месте
ЖДНАЯ - АПР 10:36 - 12:36 (задержки 3-5 минут, считай вовремя) , от Апрелевки отправился тоже вовремя (в 12:47)
ЖДНАЯ - АПР 10:56 - 12:56 (прибыл с опозданием в 21 мин) - далее этот состав пускают по графику следующего состава, т.е. на 20 мин позже и так целый день. Рейс "18:27" - это он и есть.
следующий состав ездил с опозданием в 10-15 минут
а ещё следующий практически в своё графиковое время.
-
Там какая-то трасса проектируется от них прямиком до Коммунарки.
Когда постоят, можно замутить маршрут.
-
26 минут назад, МИгИ сказал:
ну у 111к у "ДК МГУ" всё-таки остановка была не одна, а немного разнесённая - своя к разным конечным. Равно как и у других таких маршрутов.
А сейчас предлагается именно одна остановка с ориентиром на табло - возможны инциденты)))
Раньше никаких электронных маршрутоуказателей не было - поэтому делали разнесённые остановки.
Ещё пример - 37 / 837 в Бирюлёве-Западном, но там тоже разнесённые (а раньше - по разную сторону от шоссе, насколько я помню, на территории к/ст)
-
Транспорт у них практически круглосуточный, что удивительно
-
1 час назад, Елисей сказал:
С 7 до 8 утра в будни от Автозаводской в сторону Профсоюзной всего 4 рейса - это 8-10 минут?)))
Это до среды, взяли одну машину на временный 026.
-
11 минут назад, AE777 сказал:
Замена обшивки - 1/40 стоимости нового самолёта?!
Под обшивкой тоже что-то повреждено.
-
16 часов назад, Anomim сказал:
https://m.vk.com/wall-137324015_459661 водовоз повредил самолёт
Пишут, ремонт обойдётся около 1 млрд рублей
-
23 часа назад, Infeer10 сказал:
Вообще интересно, сколько человек берут, и насколько можно ничего не уметь) Я бы, может, попробовался аналитиком, но, поскольку, реального опыта и знания программ нет, то явно буду в минусе перед остальными.
Хотя по некоторым изменениям маршрутов есть вопросы к профессионализму того, кто уже там работает)
Если вдруг устроишься, всяко будет полезнее тех профнепригодных, которые ставили маршрутную скорость 10 км/ч на e10 на всём протяжении маршрута.
- 4
-
7 часов назад, Михаил_123 сказал:
А где ему ещё быть? Исторически в Крылатском всё было в 5 АП, кроме 688. Он в ФАТПе был.
У частника может быть.
-
Любопытно, что нет связи нумерации маршрутов с временем выхода на линию: 62 маршрут выходит на полчаса позже, чем 68...
-
Вечные пробки на МКАДе влияют на стабильность маршрута. Вангую изменение 660, после того, как люди попривыкнут к 280. Например, его можно закольцевать по ул. Маршала Сергеева
-
Когда там у 660 контракт заканчивается?
-
вообще-то это вредительство!
и люди им пользовались, небольшой поток был, это те, которым 26 не подходил. Я в том числе.
"на отменяемом участке пользуйтесь 26" - только пересадки в районе пересечения с Профсоюзной с трамвая на автобус нет.
"Автобусы будут ходить чаще" - чаще, чем 315? Не верю!
- 1
-
Здесь я распишу тезисно, как можно работать с этими данными через СУБД sqlite3.
Инструкция будет в виде практического примера поиска расписания по реальному номеру маршрута, инструкцию вы при желании сможете адаптировать под другие задачи поиска.
Про автоматизацию будет сказано ниже.
Вам понадобятся:
DB Browser отсюда: https://sqlitebrowser.org/dl/
Расширение text.dll отсюда: https://github.com/nalgeon/sqlean/releases/tag/0.21.10 (документация: https://antonz.ru/sqlean-text/ )
Этап 1: подготовительный
- загружаем данные csv на ПК по ссылкам Ильи
- если нет нужных данных csv, их можно сконвертировать из xlsx в csv с помощью сервиса: https://convertio.co/ru/xlsx-csv/
В DB Browser:
- создать новую БД
- загрузить csv в БД (файл - импорт), "имена столбцов в первой строке" - ДА, и изменить разделитель на ";" (для csv с сайта data.mos.ru)
для нашего примера понадобится загрузить data-60661-2024-02-08.csv и data-60664-2024-03-01.csv
- загружаем расширение text.dll в DB Browser (инструменты - загрузить расширение - text.dll)
В базе данных сцеплены id маршрута, id расписания, номер рейса и номер выхода в одну строку. Для удобства поиска их надо расцепить, для этого мы создадим новые столбцы:
alter table "data-60661-2024-02-08" add column route_id text as ( case when trip_id like '%_%' then text_split(trip_id, "_", 1) else trip_id end );
Этот sql-запрос нужно выполнять во вкладке SQL. После этого во вкладке "данные" для таблицы data-60661-2024-02-08 появится дополнительный столбец route_id. Это виртуальный столбец, который генерируется "на лету", используя данные столбца trip_id. Размер БД от этой операции не увеличивается. Функция
text_split(str, sep, n)
бьет строку по разделителю и возвращает n-ю часть.Ещё замечание - имена таблиц содержат символ "-", поэтому в запросах имена приходится обрамлять кавычками. Если переименовать имена без "-", двойные кавычки можно не писать.
Аналогично можно вычленить и добавить столбцы service_id, num_trip, vyhod.
Для ускорения по полю route_id можно создать индекс, но можно и не создавать, если вы не знаете, что это такое и как это делать.
Базу данных можно сохранить на диск, чтобы не проделывать эти шаги каждый раз.
Этап 2: улучшаем человекочитаемость данных
В таблице data-60661-2024-02-08 маршруты заданы через id, исправим это. Объединим таблицы data-60661-2024-02-08 и data-60664-2024-03-01 следующим запросом:
select * from "data-60661-2024-02-08" join "data-60664-2024-03-01" on "data-60661-2024-02-08".route_id = "data-60664-2024-03-01".route_id
или скопируем результат этого запроса в отдельную таблицу, синтаксис: CREATE TABLE name_newtable AS SELECT ...
create table copied AS select * from "data-60661-2024-02-08" join "data-60664-2024-03-01" on "data-60661-2024-02-08".route_id = "data-60664-2024-03-01".route_id where "data-60664-2024-03-01".route_short_name = "с962"
(в примере строкой where мы дополнительно ограничили выборку маршрутом "c962")
Для дальнейшего поиска в DB Browser`e результат лучше скопировать в отдельную таблицу.
Этот метод добавляеь столбец route_short_name, по которому можно дополнительно фильтровать данные, см. далее.
Этап 3. поиск информации и просмотр информации в DB Browser`e
DB Browser имеет такую удобную фичу, как фильтры. Фильтры поддерживают регулярные выражения.
С помощью фильтров можно быстро достать только нужные данные и отфильтровать ненужные и результат тут же отобразится в браузере DB.
Для примера, я в таблице data-60661-2024-02-08 поставил два фильтра:
на stop_sequence установил "=1" (два символа без кавычек) - начальная остановка
на trip_id: /^107_.*702$/
символы ^,$ - начало и конец строки
комбинация .* - любая последовательность посередине, которая игнорируется
после id я поставил _, чтобы не захватить 1071, 1072 и т.д.
107 - это id маршрута 27, результат - DB Browser отобразил 7 рейсов выхода 702 маршрута 27:
Результат на скриншоте:
Это очень гибкая и наглядная система. Для повышения читаемости колонки в DB Browser можно сортировать.
После того, как вы объедините таблицы на этапе 2, фильтровать данные станет ещё проще. Необязательно использовать такие сложные регулярки.
Но я бы не рекомендовал объединять всё, так как такая таблица будет занимать несколько десятков гигабайт и работать очень медленно.
Строго говоря, это неправильный метод работы, а правильный и профессиональный - через написание запросов select с условиями where и сортировкой order by. Но он требует навыков.
Этап 4, автоматизация.
К сожалению, этот этап объёмный и его описание нельзя вместить в один пост, и у меня сейчас нет времени сделать такую автоматизацию самостоятельно. Но если коротко, это проще всего сделать на python или на perl.
Нужно подготовить базу данных (этапы 1,2) и дополнительные колонки с помощью DB Browser, (дополнительные таблицы не создавать), сохранить, затем написать скрипт на питоне, который:
- подключится к этой подготовленной БД
- сделает нужные выборки select
- выведет в файл / на экран информацию в виде простой html страницы
- закроет соединение
(в сети есть достаточно подробные учебные руководства по подобной тематике на русском языке).
sqlite поддерживает агрегирующие функции, поэтому просто будет посчитать кол-во рейсов, среднее время работы, продолжительность обедов, максимальное число остановок и прочую любознательную статистику.
- 2
-
1 час назад, Infeer10 сказал:
А вот вопрос, каждый выход должен соответствовать одной машине? Я думал, так и есть, и можно быстро посчитать выходы, но, например, на 27 (автобусном) в будни есть 201 и 702 рейсы, то есть, по идее, две машины, хотя и по реестру, и я всегда наблюдал только одну машину. Или на 1 (автобусном) 301, 302, 703, 704, 705, 706 рейсы, но и по реестру и по наблюдениям машин всегда было 5. У обоих этих маршрутов расписание уехало за пределы таблицы, поэтому понять сложно.
Илья, на 27 автобусном есть днём интервал 40 минут. Конечно, там два выхода.
Или на утренний рейс 7:14 даётся полтора часа, в это время второй выход начинает работу в 8:13...
-
Нашел, спасибо! Прикольно.
-
12 часов назад, Infeer10 сказал:
data.mos.ru,
Точно здесь? Можно конкретнее ссылку? Очень интересно. Спасибо.
-
Справа виднеется боковой маршрутоуказатель.
Если есть коллекция старых трафаретов, можно с ненулевой вероятностью определить маршрут соседнего автобуса.
-
16 минут назад, Mixalblch сказал:
Здравница, Дачное, Вязёмы ... миксер мне в глаза. От Тучков до Можайска пылесосит всё подряд. На..., но главное зачем?!
Это скопированные графики текущих электричек до Можайска, курсирующих по 6 марта.
-
По маршрутам зарядной станции Филёвский парк никаких подмен не заметил
-
Сколько в них вагонов будет?
-
Насчёт невывоза - был какой-то слёт велосипедистов далее Можайска и они там в субботу утром пересаживались на вязьминскую. Так вот, им 4 вагонов не хватило, пара людей с велосипедами (!) грузилось в кабину машинистов.
-
А то, что теперь мелькают кубики на 300 - в обсуждении как-то не всплыло.
- 2
Выход частных компаний на социальные маршруты
в Маршруты, остановки
Опубликовано
Мега-экспресс, с остановками "Нововатутинский проспект", "м. Прокшино", "м. Филатов Луг". Всё.
Лучше бы этот маршрут объединить с с18 и пустить по новой дороге вдоль Кленовых Аллей.