如何解决如何从区域统计即 r::zonal输出创建栅格?
library(raster)
library(fasterize)
library(sf)
#Template raster
roadtif <- 'roads.tif'
cropExtent <- extent(ras2)
##Zonal Raster
ws <- sf::st_read(dsn = "tv_inputs.gdb",layer = "assessment_watersheds_diss")
wsraster <- fasterize(ws,raster(roadtif),'WATERSHED_GROUP_ID')
##Elevation Raster
elevation <- raster('topography.elevation.tif')
elevation <- crop(elevation,cropExtent)
###getting min elevation by watershed group
ele_min_water <- zonal(elevation,wsraster,'min')
`
如何获得初始 wsraster 值替换为每个区域的最小高程值的栅格?
解决方法
我找到了一个使用 match 的解决方案
zonalRas <- raster(wsraster)
ele_min_water <- as.data.frame(zonal(elevation,wsraster,'min'))
zonalRas[] <- ele_min_water$min[match(wsraster[],ele_min_water$zone)]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。