Woohoo! Thank you Sarah and Michael. You are rock stars! Daniel
-----Original Message----- From: Sarah Goslee [mailto:sarah.gos...@gmail.com] Sent: Thursday, October 13, 2011 11:54 AM To: Bailey, Daniel Cc: r-help@r-project.org Subject: Re: [R] getting data associated with coordinates in a spatial data frame On Thu, Oct 13, 2011 at 2:44 PM, Bailey, Daniel <bai...@spu.edu> wrote: > Michael, that's half of the problem solved (whew!!). Now how do I change the > data at that location? You assign it a new value, just as for any assignment. Using the example from my previous email: > data(meuse.grid) > m = SpatialPixelsDataFrame(points = meuse.grid[c("x", "y")], data = > meuse.grid) > > m@data[coordinates(m)[,"x"] == 181100 & coordinates(m)[,"y"] == > 333660,] x y part.a part.b dist soil ffreq 5 181100 333660 1 0 0 1 1 > > m@data[coordinates(m)[,"x"] == 181100 & coordinates(m)[,"y"] == > 333660, "soil"] <- 5 > > m@data[coordinates(m)[,"x"] == 181100 & coordinates(m)[,"y"] == > 333660,] x y part.a part.b dist soil ffreq 5 181100 333660 1 0 0 5 1 > > This is not an intuitive way to manipulate data. That's not what it's *for*. SGDFs are for storing and working with spatial data, where all the components are needed for the spatial reference. If you need to manipulate a lot of things, you're better off doing it before you construct the SGDF, or you can cheat by extracting the data slot, working with it, then reassigning it as a single unit. mydata <- m@data # do stuff m@data <- mydata You might also benefit from reading "Applied Spatial Data Analysis with R" by Bivand et al. Sarah -- Sarah Goslee http://www.functionaldiversity.org ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.