如何过滤 SpatialPolygonsDataFrame 的部分内容?

How can I filter parts of a SpatialPolygonDataFrame?

我想是否有一个简单的解决方案来过滤 R 中的 SpatialPolygonDataFrame。假设我有很多多边形,但我只想 select 其中一些使用 leaflet[= 绘制它们17=]

我的数据来自data.gouv.fr

这是我 gist 将数据加载到 R 中的方法。

如果我只想在 leaflet 中绘制一个多边形,我会过滤 SpatialPolygonDataFrame 的 @data 部分,获取 id

> ign_shape_iris@data %>% 
+   filter(DCOMIRIS == "606120301")
 DEPCOM NOM_COM IRIS  DCOMIRIS               NOM_IRIS TYP_IRIS  id 
1  60612  Senlis 0301 606120301 Vald'Aunette-Gateliere        H 790

然后我只绘制我想要的多边形:

leaflet(ign_shape_iris@polygons[[790]]) %>% 
 addTiles() %>%
 addPolygons()

我确定有更好的解决方案。

尝试将其视为常规 data.frame,并考虑子集而不是过滤器:

ign_shape_iris[ign_shape_iris$DCOMIRIS == "606120301",]

subset(ign_shape_iris, DCOMIRIS == "606120301")