[R-sig-Geo] clip a raster layer to a mask layer using raster algebra in R?
Christian Willmes
c@willme@ @ending from uni-koeln@de
Thu Dec 6 09:37:29 CET 2018
Hello,
this should be normally a very basic simple one-liner, but I can't get
my head around it. I only find solutions for cliping a raster against a
vector, but none for clipping a raster against a raster mask.
I want to clip a layer to a mask. In GRASS GIS r.mapcalc the syntax is:
result = if(RSLmask, gebco, null())
This clips the GEBCO dataset to the extent of the given raster mask
'rslmask'. The result raster has heigt values within the raster mask
extent, the rest of the raster layer has NULL or NA values.
In R I did the following, but it does not work as expected:
gebco <- raster(gebco2014) #load raster
RSLmask <- gebco >= 0 #create mask layer
RSL <- ifelse(RSLmask, 1, NA)
The last command gives an error about vector type 'S4'?!
>In is.na(test) :
>is.na() auf nicht-(Liste oder Vektor) des Typs 'S4' angewendet
So, in short: what is the R way to simply clip a raster to a raster mask?
Thanks and best regards,
Christian
PS: If found many solutions for clipping a raster to a vector polygon,
but this is not what I want.
--
Dr. Christian Willmes
AG GIS & Fernerkundung | GIS & RS Group
Geographisches Institut | Institute of Geography
Universität zu Köln | University of Cologne
Tel.: +49 (0)221 470 6234
http://www.geographie.uni-koeln.de/14126.html
http://www.sfb806.de
http://crc806db.uni-koeln.de
http://publons.com/a/1316706/
http://orcid.org/0000-0002-5566-6542
More information about the R-sig-Geo
mailing list