Выполнение анализа маршрута в R на основе транспортной сети OSM?

13

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

В настоящее время я использую pgRouting и дополнение pgRouting для QGIS (описано здесь ) для моего анализа:

маршрутизация в QGIS

Однако мне бы хотелось, чтобы все шаги, которые я предпринимаю, были полностью реплицируемыми (см. Отличную статью об этом здесь ), а затем я бы предпочел провести анализ из командной строки и сохранить файлы сценариев для дальнейшего использования.

Пакеты R-geo хорошо отвечают этому требованию, поскольку они бесплатны, легки и стабильны: загрузите небольшой файл скрипта, и вы сможете повторить все то, что я сделал (см. Здесь пример, не связанный с этим на Rpubs). ).

R пакеты, которые я определил для этого:

  • gdistance, опубликованная в декабре 2012 года, выглядит многообещающе, но никаких признаков совместимости с транспортными сетями osm
  • e1071 кажется довольно абстрактным и, возможно, излишним из-за того, что я хочу сделать
  • pairdist.lpp функция в spatstat пакета выглядит перспективной, но имеет мало документации

Прежде чем углубиться в это, подумал, что стоит спросить людей, которые могли столкнуться с подобными дилеммами.

Можно ли выполнить мой анализ маршрутизации в R, или было бы лучше правильно изучить PostGIS и сделать все это в pgRouting?

RobinLovelace
источник

Ответы:

10

Просто чтобы закрыть этот свободный конец, так как я задал вопрос, был выпущен новый пакет под названием osmar, который содержит виньетку того, как реализовать алгоритмы кратчайшего пути в R с использованием данных Open Street Map: http: //osmar.r-forge.r- project.org/ . Использует функцию get.shortest.pathsиз пакета igraph .

Отличную статью об этом можно найти здесь: http://journal.r-project.org/archive/2013-1/eugster-schlesinger.pdf

И учебник мной можно найти здесь: http://eprints.whiterose.ac.uk/77643/7/lovelace2.pdf

RobinLovelace
источник
-1

Я использовал пакет riverdist для аналогичных приложений. Это было ограничено для того, что я хотел использовать, но это может быть полезно для других пользователей.

Я также нашел этот пакет stplanr, который, кажется, делает то, что вы ищете.

подлесок
источник