[GRASS-user] Multiple labels and r.series
John C. Tull
john.tull at wildnevada.org
Tue Nov 11 22:35:19 EST 2008
On Nov 11, 2008, at 6:45 PM, Hamish wrote:
> John wrote:
>> I am creating a raster map that essentially summarizes the
>> intersection of a series of labeled rasters that each have
>> values of either 1 or null (presence/absence data). I am
>> using r.series like this to perform the summation across the
>> rasters that are all named with a prefix of presence_:
>>
>> r.series input="`g.mlist rast
>> pattern='presence_*' sep=,`"
>> output=presence_sum method=sum --o
>>
>> Can anyone think of a way to achieve this summation of
>> intersections in a way that will also allow for each cell to
>> have a label that concatenates all labels for the respective
>> raster maps that are present at that cell? E.g., let's
>> say three of the rasters are present at a particular cell,
>> and the labels for those rasters are 'raster1',
>> 'raster4', and 'raster7'. I would like the
>> final map to have a label of 'raster1, raster4,
>> raster7'.
>>
>> Any and all suggestions are greatly appreciated.
>
>
> the trick here is to r.reclass 0/1 absence/presence maps to be 0/2^n
> before running the sum. So you then get a sum like 13, which would
> mean
> the 8+2+1 maps were all present, or if the sum was 5 you'd know the
> 1+4
> maps were present for that cell, and not others.
>
>
> see also r.bitpattern and r.mapcalc bitwise operators. (sorry I don't
> know the proper name/wikipedia link for this technique, I'm not a
> computer
> scientist)
I follow your logic here. I am still hopeful that someone will have
some sort of script or r.mapcalc magic to generate concatenated labels.
As I'm not a computer scientist either, I fear I would spend more time
trying to decipher the bitwise values and meanings than would be
practical. That is a good suggestion, nonetheless. I should have added
that I am using about 96 raster layers.
(Apologies for the mis-post before.)
Thanks,
John
More information about the grass-user
mailing list