Я использовал gIntersect
функцию из rgeos
пакета, чтобы определить, какие полигоны пересекаются в двух SpatialPolygonsDataFrames (spdfs). В результате получается логическая матрица с именами строк, состоящими из идентификаторов многоугольников из sfdf # 1, и именами столбцов из spdf # 2. Я хотел бы использовать эту матрицу для подмножества двух исходных spdf, исключая те многоугольники, которые не перекрываются, перед использованием функции gIntersection
. Я могу легко преобразовать логическую матрицу в два вектора идентификаторов (по одному для каждого spdf), которые представляют те многоугольники, по крайней мере, с некоторым перекрытием.
Мой вопрос - могу ли я использовать вектор идентификаторов полигонов для поднабора spdf? Если это так, правильно ли он поднабор значений в @data
слоте? Я знаю, что я обычно могу поднабор spdfs, используя этот синтаксис:
spdf[spdf@data$myVariable[someVector], ]
Это не будет работать для идентификаторов, так как они скрыты в структуре списка spdf.
spdf[r, ]
)r
имен строк, используя целые извлечет ординально