[英]Merge rasters of different extents, sum overlapping cell values in R
我正在尝试合并程度不同的栅格化折线,以便创建一个指示像元重叠次数的单一曲面。
由于计算限制(鉴于我的研究区域的大小),我无法为每个栅格使用extend
然后stack
(总数= 67)。
我遇到了R中的merge
功能,这使我可以将栅格合并到一个表面中。 但是,似乎不喜欢我插入一个函数来计算重叠单元的总和。
也许我缺少明显的东西,或者这是merge
功能的限制。 任何有关如何生成此输出,避免extend
和stack
建议,将不胜感激!
码:
# read in specific route rasters
raster_list <- list.files('Data/Raw/tracks/rasterized/', full.names = TRUE)
for(i in 1:length(raster_list)){
# get file name
file_name <- raster_list[i]
# read raster in
road_rast_i <- raster(file_name)
if(i == 1){
combined_raster <- road_rast_i
} else {
# merge rasters and calc overlap
combined_raster <- merge(combined_raster, road_rast_i,
fun = function(x, y){sum(x@data@values, y@data@values)})
}
}
当前输出图像:
一条路线的图像(示例):
修复图片:
解决了。 有一个镶嵌函数,它允许以下操作:
combined_raster <- mosaic(combined_raster, road_rast_i, fun = sum)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.