某些 geotiff 的NODATA值 ( -3.39999999999999996e+38 )在 R 中被识别为-Inf 。
我使用栅格包来读取文件并生成栅格堆栈。
使用calc进行栅格计算后,NODATA值将转换为0。
有什么方法可以保留NODATA标志值。
我认为这是浮点数精度限制。
数据来自https://www.worldclim.org/data/v1.4/cmip5_30s.html
这是我的 R 代码。
library(raster)
library(rasterVis)
tiffs <- list.files(".", sprintf("%s.*tif","clip" ), full.names = T)
s <-stack(tiffs)
NAvalue(s)
levelplot(s,margin=FALSE)
composite <- raster::calc(s,sum, na.rm=T)
levelplot(composite,margin=FALSE)
Run Code Online (Sandbox Code Playgroud)