聚合位于距给定点(即圆)给定距离内的栅格中的值 [英] Aggregate the values in a raster that lie within a given distance from a given point (i.e. a circle)

查看:53
本文介绍了聚合位于距给定点(即圆)给定距离内的栅格中的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个光栅文件 nightlights,它根据卫星图像映射夜间亮度(300MB 压缩数据可用 此处).它需要经纬度输入进行提取,例如extract(nightlights, data.frame(long, lat) 用于长纬度输入.

I have a raster file nightlights that maps nighttime luminosity from satellite imagery (300MB compressed data available here). It takes longitude-latitude inputs for extraction, e.g. extract(nightlights, data.frame(long, lat) for long-lat inputs.

给定 point <- (long, lat),我希望能够汇总位于 point 5 英里范围内的所有值并计算平均光度,忽略 NA.

Given point <- (long, lat), I want to be able to aggregate all values that lie within, say, 5 miles of point and calculate an average luminosity, ignoring NAs.

光栅包带有一个聚合执行此功能的方法,但仅适用于矩形而不是球形.

The raster package comes with an aggregate method that performs this function, but only for rectangles rather than spherical circles.

推荐答案

我认为你可以使用 buffer 参数:

I think you can use the buffer argument for that:

e <- extract(nightlights, cbind(long, lat), buffer=10)

这篇关于聚合位于距给定点(即圆)给定距离内的栅格中的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆