2015-05-31 40 views
14
wmap <- readOGR(dsn="~/R/funwithR/data/ne_110m_land", layer="ne_110m_land") 

Ten kod nie jest ładowanie shapefile i błąd jest generowany jakoreadOGR() nie można otworzyć pliku

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

Jestem pewien, że katalog jest prawidłowa. Na końcu/też tam nie ma i nazwa warstwy jest również poprawna.

Wewnątrz ne_110m_land plików katalogów mam to: ne_110m_land.dbf, ne_110m_land.prj, ne_110m_land.shp, ne_110m_land.shx, ne_110m_land.VERSION.txt, ne_110m_land.README.html

Odpowiedz

37

Mogłeś wykazały, że ciebie mieć właściwą drogę z:

list.files('~/R/funwithR/data/ne_110m_land', pattern='\\.shp$') 
file.exists('~/R/funwithR/data/ne_110m_land/ne_110m_land.shp') 

może spróbuj:

readOGR(dsn=path.expand("~/R/funwithR/data/ne_110m_land"), layer="ne_110m_land") 

lub prostszą alternatywę, która jest owinięta wokół niego:

library(raster) 
s <- shapefile("~/R/funwithR/data/ne_110m_land/ne_110m_land.shp") 
+1

dzięki! Funkcja path.expand() działała. Przepraszam, że nie mogę głosować na odpowiedź. –

+0

@RiteshJungThapa możesz zaakceptować jako poprawną odpowiedź (nawet jeśli nie możesz przegłosować) – geneorama

+0

Dlaczego kod opublikowany w pytaniu nie działa? Mam taki sam problem, ale wiele plików o tej samej nazwie i innym rozszerzeniu w folderze, dlatego 'path.expand' nie będzie działać. – Dambo