Estou usando a biblioteca maptools do R para analisar o shapefile em uma lista de polígonos. A função readShapeSpatial
shp <- readShapeSpatial("<path to my shapefile>")
me fornece um objeto SpatailPolygonDataFrame . No meu exemplo, meu SpatialPolygonsDataFrame possui as seguintes colunas:
> names(shp)
[1] "AREA" "PERIMETER" "COMAREA_" "COMAREA_ID" "AREA_NUMBE"
[6] "COMMUNITY" "AREA_NUM_1" "SHAPE_AREA" "SHAPE_LEN
Eu sei que eu posso remover certos polígonos por sua row.id
, por exemplo,
shp.dropI <- shp[-i, ]
shp.subset <- shp[i %in% c(1,2,3),]
Agora eu quero descartar certos polígonos com uma condição, digamos AREA > 10
. Como faço para implementar isso de forma elegante? O único método que tenho agora é percorrer todas as linhas e encontrar o correspondente row.id
.