Это сайт кодирования.Для подобных вопросов я бы попробовал https://gis.stackexchange.com/.
Я не уверен, что вы имеете в виду под weighted sum
в этом контексте, но вот пример того, что вы можете сделать с R
Пример данных
library(raster)
p <- shapefile(system.file("external/lux.shp", package="raster"))[1,]
r <- raster(extent(p)+2, vals=1:100)
plot(x)
plot(p, add=T)
Растр обрезан до многоугольника
x <- crop(r, p)
plot(x)
plot(p, add=T)
Разбейте ячейки так, чтобы они лучше подходили к многоугольнику, за ними следуют кадрирование и маска
d <- disaggregate(r, 100)
x <- crop(d, p)
m <- mask(x, p)
plot(m)
plot(p, add=T)