2016-09-01 2 views
-1

Мне нужна помощь в форматировании CSV-файла многоугольников в формате, который читается QGIS. Данные, которые я загрузил, имеют кучу, казалось бы, ненужного текста перед координатами полигонов.Reformattiong CSV to WKT

Координаты отформатирован так:

{"geodesic":false,"type":"Polygon","coordinates":[[[-124.26718718727625,49.10353039748446],[-124.26664819810578,49.1037998920697],[-124.26718718727625,49.1037998920697],[-124.26718718727625,49.10353039748446]]]} 

и мне нужно, чтобы они были отформатированы как это:

MULTIPOLYGON [[[-124.26718718727625,49.10353039748446],[-124.26664819810578,49.1037998920697],[-124.26718718727625,49.1037998920697],[-124.26718718727625,49.10353039748446]]] 
+0

Вы могли бы написать сценарий Python, что синтаксический анализ каждого из ваших линий, извлекая координаты и их преобразования в формат WKT. – kaycee

+0

Добро пожаловать в переполнение стека! Пройдите [тур] (http://stackoverflow.com/tour), [справочный центр] (http://stackoverflow.com/help) и [как задать хороший вопрос] (http: // stackoverflow.com/help/how-to-ask), чтобы увидеть, как работает этот сайт, и помочь вам улучшить ваши текущие и будущие вопросы, которые помогут вам получить более качественные ответы. –

+0

Если вы знаете Python, вы можете быстро прочитать GeoJSON в Shapely с помощью ['geometry.shape'] (http://toblerity.org/shapely/manual.html#shapely.geometry.shape), а затем экспортировать любые WKT, которые вам нужны , –

ответ

0

Допустим, у вас есть все ваши координаты в текстовом файле построчно вас 'd создайте копию своего файла, используйте NotePad ++ и выполните следующие шаги:

  • Ctrl + H
  • Найти что: ({"geodesic":false,"type":"Polygon","coordinates":)(.+)(\}$)
  • Заменить: MULTIPOLYGON \2
  • Режим поиска: Регулярное выражение
  • Нажмите на Заменить все или Alt +

    Done ...

enter image description here

MULTIPOLYGON [[[-124.26718718727625,49.10353039748446],...,...,[-124.26718718727625,49.10353039748446]]] 
MULTIPOLYGON [[[-124.26718718727625,49.10353039748446],...,...,[-124.26718718727625,49.10353039748446]]] 
MULTIPOLYGON [[[-124.26718718727625,49.10353039748446],...,...,[-124.26718718727625,49.10353039748446]]] 
MULTIPOLYGON [[[-124.26718718727625,49.10353039748446],...,...,[-124.26718718727625,49.10353039748446]]]