Problems converting rasters from float to integer.
I'm pretty sure readGDAL from rgdal (that raster uses) will keep as integers, so you can build an empty raster and copy the values over. But will need to derive from the rgdal version to catch all the metadata (structure, extent, and crs). I think it's doable and will try later. There are other options but nothing trivial afaik. Cheers, Mike
On Fri, 24 Aug 2018, 16:45 nevil amos <nevil.amos at gmail.com> wrote:
I have a large number of rasters ( tiffs) that contain whole number values
between 0 and 100, and NA values. or 0,1,and NA
they are currently in Float format, I am trying to rewrite them as integer
rasters, firstly to save space, and secondly so that I can later read the
values stack of all the rasters into an integer array. using getValues().
To do this I am setting the dataType to INT2U in writeRaster, however when
I read the save file back into R the format is not INT2U but FLT8S
toy example:
v<-c(rep(1.00000,25),rep(0.00000,50),rep(NA,25))
m<-matrix(v,10,10)
r<-raster(m)
dataType(r)
writeRaster(r,"test_int.tif",dataType="INT2U",overwrite=T)
s<-raster("test_int.tif")
dataType(s)
the result I get:
v<-c(rep(1.00000,25),rep(0.00000,50),rep(NA,25)) m<-matrix(v,10,10) r<-raster(m) dataType(r)
[1] "FLT4S"
writeRaster(r,"test_int.tif",dataType="INT2U",overwrite=T)
s<-raster("test_int.tif")
dataType(s)
[1] "FLT8S"
Can you suggest how I ensure the values are stored as integer?
Many thanks
[[alternative HTML version deleted]]
_______________________________________________ R-sig-Geo mailing list R-sig-Geo at r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-geo
Dr. Michael Sumner Software and Database Engineer Australian Antarctic Division 203 Channel Highway Kingston Tasmania 7050 Australia [[alternative HTML version deleted]]