[R-sig-Geo] Step characteristics on raster maps

Mathieu Basille basille at ase-research.org
Thu Sep 30 20:57:03 CEST 2010


Dear Robert,

I just understood the interest of 'crosstab' with 'mask', this is pretty
neat! Thanks for the suggestion.

However, I can see some potential drawbacks with this approach: as my
objective is to describe each step (each segment), I should first cut
each 'SpatialLines' into a list of 'Lines', each 'Lines' being a segment
(and not the whole trajectory). I apology if I'm totally wrong, I'm not
that familiar with SpatialLines...

But then, what about crossing/overlaping segments, i.e. several segments
that all fall in the same pixel (which usually happens a lot)? With
linesToRaster, only the last segment would be kept. So that I should run
independently the approach for each 'Line' (each segment) just to avoid
these crossings, and that would result in as many new rasters as the
number of segments (and I'm talking about hundreds of thousands here,
over large rasters).

Basically, to rephrase my problem, here is what I want to achieve. Given
a set of points (say a SpatialPointsDataFrame, or SpatialLinesDataFrame,
or ltraj), I'd like to be able to compute new variables that give for
each point summaries or characteristics (e.g. proportion of each type of
the raster if it is categorical, or mean if is continuous) of the
segment from that point to the next (or previous, it doesn't matter).

It seems to be a simple problem in terms of low-level functions
(segments over raster), but a complex one in terms of data structure (an
single object with a set of individual trajectories which are themselves
sets of segments). And I have to admit that I have some troubles going
from the former to the latter.

Thanks again for your time,
Mathieu.


Le 2010-09-30 11:28, Robert J. Hijmans a écrit :
> Perhaps you can do something like
> 
> r is a Raster* object
> line is a SpatialLines* object
> 
> library(raster)
> rr <- linesToRaster(line, r)
> rm <- mask(r, rr)
> crosstab(rm, rr)
> 
> Robert
> 
> On Thu, Sep 30, 2010 at 5:46 AM, Mathieu Basille
> <basille at ase-research.org> wrote:
>> Dear list members,
>>
>> I'm trying to compute characteristics along steps (i.e. segments between two
>> points), based on underlying raster maps. The steps originally come from
>> radiotracking data, converted to ltraj objects (adehabitat). The idea is to
>> compute (for example) the habitat composition corresponding to each step
>> instead of each points, as we are interesting in the movement path.
>>
>> I tried different solutions, as I would like to do it with R. I did not find
>> any solution using adehabitat (or the development versions adehabitatMA/LS);
>> 'join' only works for point characteristics, not steps. I also tried using
>> sp and SpatialLinesDataFrame, but overlay does not seem to work with
>> SpatialLines(DataFrame) and SpatialPixelsDataFrame:
>>
>> Error in function (classes, fdef, mtable)  :
>>  unable to find an inherited method for function "overlay", for signature
>> "SpatialPixelsDataFrame", "SpatialLinesDataFrame"
>>
>> I also investigated packages raster, trip, and rgeos, without success. Maybe
>> the low level functions of rgeos could be used, but it seems a bit out of my
>> skills (and time available) at the moment.
>>
>> Another solution might be to use spgrass6 in conjunction with GRASS, but I'm
>> not familiar enough with GRASS to judge if it is a viable alternative...
>>
>> I'd welcome any hints/thoughts on this question.
>> Sincerely,
>> Mathieu Basille.
>>
>>
>> --
>>
>> ~$ whoami
>> Mathieu Basille, Post-Doc
>>
>> ~$ locate
>> Laboratoire d'Écologie Comportementale et de Conservation de la Faune
>> + Centre d'Étude de la Forêt
>> Département de Biologie
>> Université Laval, Québec
>>
>> ~$ info
>> http://ase-research.org/basille
>>
>> ~$ fortune
>> ``If you can't win by reason, go for volume.''
>> Calvin, by Bill Watterson.
>>
>> _______________________________________________
>> R-sig-Geo mailing list
>> R-sig-Geo at stat.math.ethz.ch
>> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>>

-- 

~$ whoami
Mathieu Basille, Post-Doc

~$ locate
Laboratoire d'Écologie Comportementale et de Conservation de la Faune
+ Centre d'Étude de la Forêt
Département de Biologie
Université Laval, Québec

~$ info
http://ase-research.org/basille

~$ fortune
``If you can't win by reason, go for volume.''
Calvin, by Bill Watterson.



More information about the R-sig-Geo mailing list