我想在兩個柵格之間應用相對簡單的「柵格數學」計算。我似乎無法弄清楚如何在我的函數中正確設置NA值。我到處尋找答案,並嘗試了幾種不同的方法來解決這個問題,但無濟於事。柵格計算功能 - 與NA數據問題
library(raster)
#Edited with feedback
fun.calc <- function(x, y, ...)
{
tree.w <- sum(x/(100 - y), ...)
ifelse(is.na(x) | is.na(y), NA, tree.w)
}
r1 <- raster(nrow=50, ncol = 50)
r1[] <- 90
r1[4:10,] <- NA
r2 <- raster(nrow=50, ncol = 50)
r2[] <- 40
r2[9:15,] <- NA
#Try UPDATED
fun.calc(r1[,,1], r2[,,1], fun=fun.calc, na.rm=TRUE)
這不會引發錯誤,但我沒有得到正確的值,在沒有NA值的地方應該是1.5(我得到2850)。我不明白爲什麼這樣做,但我想它與光柵中的矢量有關。
感謝您的想法!
函數'raster()'來自哪裏。請在代碼中包含所有必需的庫。 – MrFlick
對不起@MrFlick編輯! – user3367135