我使用了包中的gIntersect
函数rgeos
来确定两个SpatialPolygonsDataFrames(spdfs)中哪些多边形相交。结果是一个逻辑矩阵,其行名包含sfdf#1中的多边形ID,并使用spdf#2中的多边形ID同名。我想使用此矩阵将两个原始spdf分为子集,然后在使用function之前省略那些没有重叠的多边形gIntersection
。我可以轻松地将逻辑矩阵转换为两个ID向量(每个spdf一个),这些向量表示那些至少具有一定重叠的多边形。
我的问题是-我可以使用多边形ID的向量来包含spdf吗?如果是这样,它将正确地对@data
插槽中的值进行子集化吗?我知道我通常可以使用以下语法对spdf进行子集化:
spdf[spdf@data$myVariable[someVector], ]
这对于ID无效,因为它们被深埋在spdf列表结构中。
spdf[r, ]
)