Не удается открыть файл shp - PullRequest
0 голосов
/ 26 июня 2019

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

Использование

file.exists('../Downloads/NUTS_RG_03M_2013_4326_LEVL_2.shp')

Я получаю TRUE

Но когда я запускаю

shapefile('../Downloads/NUTS_RG_03M_2013_4326_LEVL_2.shp')

, я получаю

Error: file.exists(extension(x, ".shp")) is not TRUE

Я пытался запустить

readOGR(dsn = "..Downloads/NUTS_RG_03M_2013_4326_LEVL_2.shp", layer ="NUTS_RG_03M_2013_4326_LEVL_2")

и получаю ошибку

Error in ogrInfo(dsn = dsn, layer = layer, encoding = encoding, use_iconv = use_iconv,  : 
  Cannot open data source

Также попробовал

readOGR(dsn=path.expand("../Downloads"), layer="NUTS_RG_03M_2013_4326_LEVL_2")

и получил

Error in ogrInfo(dsn = dsn, layer = layer, encoding = encoding, use_iconv = use_iconv,  : 
  Cannot open layer

Я не знаю, что еще попробовать

1 Ответ

0 голосов
/ 26 июня 2019

Все опробованные варианты были слегка ошибочны:)

Если вы скачали ZIP-файл отсюда и извлекли его в Downloads, то путь к файлу должен быть:

Downloads/NUTS_RG_03M_2013_4326_LEVL_2.shp/NUTS_RG_03M_2013_4326_LEVL_2.shp

Обратите внимание, что как разархивированный каталог, так и файл внутри него имеют расширение .shp.

DSN должен быть путем к каталогу без косой черты, а слой является шейп-файлом без расширения .shp.

Так что я думаю, что вы хотите:

readOGR("../../Downloads/NUTS_RG_03M_2013_4326_LEVL_2.shp", "NUTS_RG_03M_2013_4326_LEVL_2")

EDIT:

Я запустил этот код на моей локальной (Windows 10) машине:

nuts <- readOGR("../../Downloads/NUTS_RG_03M_2013_4326_LEVL_2.shp",
                "NUTS_RG_03M_2013_4326_LEVL_2")

и файл читает с сообщением:

OGR data source with driver: ESRI Shapefile 
Source: "C:\Users\nsaunders8\Downloads\NUTS_RG_03M_2013_4326_LEVL_2.shp", 
  layer: "NUTS_RG_03M_2013_4326_LEVL_2"
with 320 features
It has 5 fields
...