【发布时间】:2021-03-16 16:39:40
【问题描述】:
在 R 中,我需要创建一个具有 概率 的 raster 4 个栅格(与道路、斜坡、草丛和树木覆盖的距离)。对于其中的每一个,我都创建了一个公式来计算重量。不幸的是,我无法共享数据。下面的这个功能是我迄今为止尝试做的,但它还没有工作。它给出了错误:Non-numeric argument to mathematical function。有什么建议吗?
probabilities_raster <- function(tc, gc, road, slp){
# Create structure to hold data
propxy_raster <- raster(ncol=100, nrow=100)
ncell(propxy_raster)
treecover <- (dnorm(tc, mean=0.7, sd=0.1))/(dnorm(0.7, mean=0.7, sd=0.1)) # not working
grasscover <- (dnorm(gc, mean=0.3, sd=0.1))/(dnorm(0.3, mean=0.3, sd=0.1)) # not working
road <- pnorm(-2+4*road) # not working
slope <- exp(-10*slp) # this one works
# Calculate weight
weight <- treecover * grasscover * road * slope
propxy_raster <- weight
return(propxy_raster)
}
raster_1 <- probabilities_raster(tc=raster_treecover, gc=raster_grasscover, road=raster_road, slp=
raster_slope)
【问题讨论】:
标签: r probability raster spatial weighted