Мне нужно создать новый растр (называемый ch
на основе двух растров (называемых tmin
и tmax
), основанный на следующих логиках c. Каждый элемент нового растра следует этому логическому алгоритму c . tmin, tmax
и ch
- все растровые кирпичи с одинаковыми размерами, но я решил сначала поэкспериментировать только с одиночными слоями.
if (tmin > 7) ch <- 0
if (tmax < 7) ch <- 24
else
ch <- (7 - tmin)/(tmax - tmin)
Я пытался следовать логике c этого ответ со следующим кодом. testout
состоит из нулей или 24, как и ожидалось. Я не могу понять, как вставить последнюю часть логики c в этот процесс.
library(raster)
r1 <- raster()
r2 <- raster()
set.seed(10)
values(r1) <- runif(ncell(r1), min = 0, max = 10)
values(r2) <- runif(ncell(r2), min = 0, max = 10)
myFun <- function(r1, r2) {
0*(r1 > 7)+
24*(r2 < 7)
}
testout <- myFun(r1, r2)