Вот аналогичные данные для высоты
library(raster)
a <- getData("alt", country="NZL")
r <- a[[1]]
plot(r)
Я думаю, ваше замешательство связано с тем, что здесь происходит
x <- !is.na(r)
Это превращает значения в TRUE
(те, которые не были NA
) или FALSE
(те, что были NA
). Итак, теперь у вас есть две категории
plot(x, col=c("red", "blue"))
И теперь это уже не хороший набор данных для dismo::randomPoints
Если вы предпочитаете NA
и 1 другое значение, вы можете
y <- r * 0
plot(y, col="blue")
Или
y <- reclassify(y, cbind(-Inf, Inf, 1))
Но, как вы сами говорите, для randomPoints
можно просто использовать исходные данные.