[R-sig-Geo] Error in reading shape file with readOGR()

Roger Bivand Roger.Bivand at nhh.no
Wed Feb 14 11:11:09 CET 2018


On Tue, 13 Feb 2018, Adam Fera wrote:

> Hello, Amos,
>
> I came across this posting because I had a similar problem using R for
> mapping within GNU Emacs Org Mode on GNU/Linux.  I work on a research team
> that uses a shared directory for data analysis.  This makes it imperative
> to use relative pathnames so that everyone can use the exact same code, the
> exact same way, and achieve the exact same result.  Unfortunately, the
> readOGR function in the rgdal package does not allow the use of relative
> pathnames in the dsn (data source name) argument.

The underlying GDAL logic expects an expanded path. Until I can check that 
using path.expand() inside the functions at least for reading, perhaps 
writing, use it as dsn = path.expand("~/relative/path/to/file/nypp_15c/"). 
I'd be grateful for feedback on whether this works as well as setwd().
sf uses enc2utf8(normalizePath(dsn)), so you could try normalizePath() 
too - path.expand() handles ~ but not ../.. . readGDAL() handles relative 
paths OK and uses normalizePath() internally.

Roger

>
> To get around this, I use the setwd and getwd functions.  I use setwd to
> set the working directory to the directory with the shapefile.  Then, I use
> the getwd function as the dsn argument.  Since setwd() can handle relative
> pathnames and getwd() prints the absolute pathname, this allows the user a
> way around the dsn= argument requiring an absolute pathname.  This worked
> for my research team and allowed us all to use the same code for mapping in
> R.
>
> My R code looks something like this:
>
> ## SET WORKING DIRECTORY TO BE UNIFORM
> setwd("~/relative/path/to/file/nypp_15c/")
>
> ## IMPORT THE SHAPEFILE TO A SPATIAL DATA.FRAME
> library(rgdal)
> precincts.2015 <- readOGR(
>    dsn=getwd(),
>    layer="nypp")
>
> I would like to thank all the R developers, in particular Professor Bivand,
> for their extremely useful contributions in creating software for
> geospatial data analysis.
>
> I hope this helps,
>
> Adam G. Fera
>
>

-- 
Roger Bivand
Department of Economics, Norwegian School of Economics,
Helleveien 30, N-5045 Bergen, Norway.
voice: +47 55 95 93 55; e-mail: Roger.Bivand at nhh.no
http://orcid.org/0000-0003-2392-6140
https://scholar.google.no/citations?user=AWeghB0AAAAJ&hl=en



More information about the R-sig-Geo mailing list