我希望编写一个 R 程序来读取纬度/经度点的数据帧和 13 个多边形的 shapefile,然后识别每个纬度/经度点位于哪个多边形内。是否有一个 R 包可以让我进行这种类型的空间连接?我一直在使用 rgdal 来读取多边形 shapefile,但我没有看到用于与我的数据框中的 lat/long 列进行空间连接的选项。谢谢!
3363 次
1 回答
2
G. Cocca 的解决方案经过一些小的修改后效果很好。
R最终,解决方案需要使用'slibrary(sp)和的四个步骤library(EcoSpatial):
- 将 lat/long 点数据帧转换为
SpatialPointsDataFrameusingsp. - 使用
sp'sproj4string函数重新投影,SpatialPointsDataFrame以便它使用与我的多边形 shapefile 相同的投影。 - 使用
EcoSpatial'spoints.in.poly函数在空间上连接两个数据集。这是关键步骤,因为它创建了一个新的SpatialPointsDataframe,将相关的 polgyon 数据附加到每个 xy 点。 - 用来
as.data.frame强制SpatialPointsDataframe后面变成正则Rdata.frame。
再次感谢您的帮助!
于 2016-04-28T13:52:10.857 回答