Как растрировать точечные данные в Python и вычислить среднее значение по определенному значению (эквивалентно растру() и растрировать() в R)?

#python #r #mean #raster #rasterize

Вопрос:

У меня есть большой фрейм данных со значениями координат (lat/long) и значением измерения, связанным с каждой координатой. Если я построю значения напрямую, точки перекрываются. Вот почему я хотел бы создать сетку или растр и вычислить среднее значение всех значений точек в каждой ячейке растра, чтобы я мог создать хороший график.

В R я могу сделать это с помощью библиотеки растров, но мне хотелось бы что-то сопоставимое в Python:

 library(raster)

# create random sample data set
x <- round(rnorm(100, 0, 50),4)
y <- round(rnorm(100, 0, 50),4)
z <- round(rnorm(100, 2), 4)

# set raster dimensions
r <- raster(ncols = 20, nrows = 20)

xy <- cbind(x, y)
vals <- z

# calculate mean of the values associated with the points in each raster cell
r3 <- rasterize(xy, r, vals, fun = mean)

plot(r3, main="rasterized plot")


 

Сюжет:

https://i.stack.imgur.com/yqimI.png

Я не могу найти ничего подобного для Python. Существует ли сопоставимый метод?

Спасибо!