On Thu, 11 Nov 2010, Chris Carleton wrote:

Hi List,

I've imported a SpatialGridDataFrame (SGDF) from GRASS with spgrass, and now
I'm trying to select only those entries with a certain value in a column.
What is the appropriate syntax for selecting cells in a grid that have
particular values? Here's what I have:

----------
summary(modelRast)
Object of class SpatialGridDataFrame
Coordinates:
       min       max
x  174812.5  382055.5
y 1798172.6 1942292.8
Is projected: TRUE
proj4string :
[+proj=utm +zone=16 +a=6378137 +rf=298.257223563 +no_defs
+towgs84=0.000,0.000,0.000 +to_meter=1.0]
Number of points: 2
Grid attributes:
 cellcentre.offset cellsize cells.dim
x            174820 15.00021     13816
y           1798180 15.00002      9608
Data attributes:
 Value 1      NA's
 1534000 131210128
----------

So, the SGDF obviously 'knows' which cells are NA and which are 1, but how
do I select cells on the basis of a column value?

Firstly, this is a very large object if you are considering statistical analysis. In general, you treat Spatial*DataFrames like any data frame. To operate on it, you might choose to coerce it to a SpatialPixelsDataFrame, which drops all of the missing values cells, and retains only those within your apparent mask. Then, you'd do something like:

modelRastSP <- as(modelRast, "SpatialPixelsDataFrame")
# add a variable
modelRastSP$newvar <- whatever

The same "$" or "[[" operator works on a SpatialGridDataFrame. Are you asking because you need to interpolate to the raster within a mask? Then you could use coordinates(modelRastSP) to get the prediction points.

If you can make your questions more specific, I think that others may be able to help,

Roger


Also, is there a way to write values into a column in the SGDF without
having to create a new df object and then combine them? For example, how do
I:

---pseudo code---
for cell in sgdf {
thing = calculate_something(cell)
write2grid(cell, thing)
}
------------------------

I haven't been able to work this out on my own or find any examples of this
type of selection online (been searching a while... ) though I might be
looking in the wrong places. Thanks,

Chris


--
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Helleveien 30, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43
e-mail: [email protected]

_______________________________________________
grass-stats mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-stats

Reply via email to