rgdal / readOGR - невозможно прочитать шейп-файл из.zip

Я пытаюсь загрузить шейп-файл на уровне почтового индекса, чтобы сделать некоторые заговоры, по: https://github.com/hadley/ggplot2/wiki/plotting-polygon-shapefiles http://www.nceas.ucsb.edu/scicomp/ usecases / ReadWriteESRIShapeFiles и т. д.

Мой код:

library(rgdal)
library(RColorBrewer)
library(ggplot2)
zipmap = readOGR(dsn="file.zip/", layer="myZIPmap")

Я получаю эту ошибку:

Error in ogrInfo(dsn = dsn, layer = layer, input_field_name_encoding = input_field_name_encoding) : 
  Cannot open file

Я проверил драйверы, но, если честно, я не могу интерпретировать вывод:

ogrDrivers()
             name write
1      AeronavFAA FALSE
2          ARCGEN FALSE
3          AVCBin FALSE
4          AVCE00 FALSE
5             BNA  TRUE
6             CSV  TRUE
7             DGN  TRUE
8             DXF  TRUE
9          EDIGEO FALSE
10 ESRI Shapefile  TRUE
11     Geoconcept  TRUE
12        GeoJSON  TRUE
13       Geomedia FALSE
14         GeoRSS  TRUE
15            GML  TRUE
16            GMT  TRUE
17       GPSBabel  TRUE
18  GPSTrackMaker  TRUE
19            GPX  TRUE
20            HTF FALSE
21         Idrisi FALSE
22            KML  TRUE
23   MapInfo File  TRUE
24         Memory  TRUE
25   MSSQLSpatial  TRUE
26           ODBC  TRUE
27        OpenAir FALSE
28         PCIDSK  TRUE
29            PDS FALSE
30         PGDump  TRUE
31           PGeo FALSE
32            REC FALSE
33            S57  TRUE
34           SDTS FALSE
35       SEGUKOOA FALSE
36           SEGY FALSE
37            SUA FALSE
38            SVG FALSE
39          TIGER  TRUE
40        UK .NTF FALSE
41            VFK FALSE
42            VRT FALSE
43         XPlane FALSE

file.info дает:

 file.info(path="K:/2012 - IPD - Policy Maps/fe_2007_us_zcta500.zip/")
                                                             size isdir mode               mtime               ctime
    K:/2012 - IPD - Policy Maps/fe_2007_us_zcta500.zip/ 661131516 FALSE  666 2012-08-22 14:54:53 2012-08-22 14:50:43
                                                                      atime exe
    K:/2012 - IPD - Policy Maps/fe_2007_us_zcta500.zip/ 2012-08-22 14:58:38  no

Учитывая поиски в Интернете, которые я пробовал, похоже, что я не единственная, у кого есть эта проблема, но я не смог найти ответ. Я не уверен, связана ли проблема с шейп-файлом в папке.zip или нет. Поскольку это рабочий компьютер, мне нужно подождать, пока ИТ-специалист установит WinZip, чтобы я мог извлечь шейп-файл и попробовать выйти из папки.zip. Надеюсь, это будет завтра.

Кроме того, справка пакета гласит: "Обратите внимание, что блуждающие файлы в каталогах источников данных (например, *.dbf) могут привести к серьезным ошибкам, которые сопровождают *.shp". Папка.zip содержит следующее: a.dbf, b.prj, c.shp, d.shp.xml, e.shx.

Любая помощь, которую вы можете оказать, будет замечательной! для -Alex-

1 ответ

Решение

Вы должны быть в состоянии распаковать файлы без необходимости внешней программы с unzip, Чтобы прочитать шейп-файл с readOGR, dsn имя каталога, в котором находятся ваши "разархивированные" файлы, и layer это имя вашего файла формы без расширения. В приведенном ниже примере замените myZIPmap на соответствующее имя шейп-файла.

library(utils)
library(rgdal)

unzip("K:/2012 - IPD - Policy Maps/fe_2007_us_zcta500.zip")
zipmap <- readOGR(dsn = "K:/2012 - IPD - Policy Maps/fe_2007_us_zcta500", layer = "myZIPmap" )
Другие вопросы по тегам