在R中使用点和多边形:获取多边形的名称

时间:2016-05-03 08:28:20

标签: r polygon

在我的data我有一个lat / long信号列表。

我有一个我用readOGR()导入的形状文件,我称之为polygons

使用代码

data$inside.polygons <- !is.na(over(data, as(polygons, "SpatialPolygons")))

我的data中有一个名为inside.polygons的新变量。它是一个逻辑变量,用于描述信号是否在多边形内(TRUE)或不在(FALSE)。

是否可以添加一个名为多边形名称的新列?

我用

创建一个新表
polygons.table <- data.frame(polygons)

我在$ Polygon.name中输入了每个多边形的名称

> str(polygons.table)
'data.frame':   233 obs. of  6 variables:
 $ Country   : Factor w/ 9 levels "Denmark","Estonia",..: 9 9 9 9 9 9 9 4 9 9 ...
 $ Polygon.name: Factor w/ 237 levels "Aalborg","Aalborg Portland",..: 114 115 69 192 193 8 237 231 230 224 ...
 $ Shape_Leng: num  0.0339 0.0209 0.0399 0.1628 0.1343 ...
 $ Shape_Area: num  5.64e-05 2.26e-05 4.22e-05 5.25e-04 5.30e-04 ...
 $ LOCodes   : Factor w/ 193 levels "DEBOF","DEFLF",..: NA NA 155 184 184 137 193 15 191 192 ...
 $ Links     : Factor w/ 26 levels "http://eng.port-bronka.ru/",..: NA NA NA NA NA NA NA NA NA NA ...

如何将Polygon.name添加到多边形内的每个信号?

谢谢!

1 个答案:

答案 0 :(得分:1)

得到它:

inside.polygon2 <- over(data, polygons[,"Polygon.name"])

然后我将其添加到我的数据

data$polygon.name <- inside.polygon2$Polygon.name