Задавая вопрос R, укажите минимальный, автономный. воспроизводимый пример. То есть не обращайтесь к вашим фактическим данным, а опишите проблему в более общем виде с данными, которые поставляются с R или которые вы создаете с помощью кода. Как это (взято в основном из ?raster::extract
Пример растра и полигонов
library(raster)
r <- raster(ncol=90, nrow=45)
values(r) <- 1:ncell(r)
r[seq(1,ncell(r),3)] <- NA
p1 <- rbind(c(-180,-20), c(-140,55), c(0, 0), c(-140,-60), c(-180,-20))
p2 <- rbind(c(10,0), c(140,60), c(160,0), c(140,-55), c(10,0))
pols <- spPolygons(p1, p2)
Решение 1
extract(r, pols, fun=function(i, ...) sum(is.na(i)))
# [,1]
#[1,] 215
#[2,] 178
Решение 2
z <- rasterize(pols, r)
zonal(is.na(r), z, "sum")
# zone sum
#[1,] 1 215
#[2,] 2 178