[R-sig-Geo] Problems converting rasters from float to integer.

Michael Sumner md@umner @ending from gm@il@com
Fri Aug 24 09:13:58 CEST 2018


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 using 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 using 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]]



More information about the R-sig-Geo mailing list