Hi,

I resolved this kind of problem once by using:

eval(as.name(x))

so in your case:

>for (x in 1:length(data.eden)) {
>     data<-readOGR(eval(as.name(data.eden[x])))
>     summary(data)
> }

Hope this helps,

Sam


I don't know if it's the solution for the  function readOGR. But for me it
was the solution with the function wrtie.ascii

On Fri, Jul 22, 2011 at 11:30 AM, Barry Rowlingson <
b.rowlingson@lancaster.ac.uk> wrote:

> On Fri, Jul 22, 2011 at 3:45 PM, ahelmore <aelmore@usgs.gov> wrote:
> > Hi there,
> >
> > I have a rather lengthy bit of code I want to run on a series of point
> > files, but I can't even figure out how to load shapefiles in a simple
> loop.
> > Since readOGR takes shapefile names without the .shp extension, I thought
> I
> > could make a list of unduplicated file names, sans extensions and use
> that
> > to run the loop, but I'm getting a missing layer error.  After staring at
> it
> > for way too long, I'm looking for a leg up.  Can anyone tell me where my
> > thinking/code is off?
> >
> > Here's what isn't working:
> >
> > patt.xml <- ".*eden.*xml.*"
> > patt.shp <- ".*eden.*shp.*"
> > data.shp.xml <-list.files(pattern=patt.shp) # list of eden .shp &
> .shp.xml
> > data
> > data.xml <-list.files(pattern=patt.xml) # list of eden .shp.xml data
> > data.shp <- data.shp.xml[!data.shp.xml %in% data.xml] # list of .shp
> files
> > data.eden <- gsub(".shp","",data.shp) #stripping the extension
> >
> >
> > for (x in 1:length(data.eden)) {
> >     data<-readOGR(x)
> >     summary(data)
> > }
> >
> > It gives me:  Error in readOGR(x) : missing layer
>
>  readOGR takes the directory or folder with the shapefile and the
> truncated shapefile name. So to load ca.shp that is in my current
> directory I do:
>
>  > ca=readOGR(".","ca")
>  OGR data source with driver: ESRI Shapefile
>  Source: ".", layer: "ca"
>  with 58 features and 15 fields
>  Feature type: wkbPoint with 2 dimensions
>
> Technically the source is the directory, and ca.shp is the layer, in
> OGR terminology.
>
>  You might find readShapeSpatial() in maptools useful, it loads
> shapefiles given the path to a .shp file:
>
>  > ca2 = readShapeSpatial("ca.shp")
>
> however ca and ca2 aren't identical - I think its just minor
> differences in the attributes...
>
> Barry
>
> _______________________________________________
> R-sig-Geo mailing list
> R-sig-Geo@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>

	[[alternative HTML version deleted]]

