У меня есть SpatialPolygonsDataFrame
, который я создал, прочитав шейп-файл, используя readOGR
в пакете rgdal
. Я пытаюсь использовать его для создания сетки выборки с использованием spsample
в пакете sp
, который будет использоваться для интерполяции данных обследования, собранных в этом районе. Однако SpatialPointsDataFrame охватывает гораздо большую область, чем обследование, и в результате интерполяция предсказывает значения далеко от того места, где проводились какие-либо обследования. Данные съемки и шейп-файл были спроецированы с использованием одной и той же proj4string.
Я хотел бы подмножество SpatialPolygonsDataFrame, используя координаты, установленные геодезическими станциями, но я не уверен, где соответствующие значения хранятся в объекте.
Боюсь, что я не могу предоставить соответствующие данные, поскольку шейп-файл не размещен в Интернете. Однако я позаимствую код из ответа Пола Хиемстры на это сообщение для Нидерландов:
library(ggplot2)
library(sp)
library(automap)
library(rgdal)
#get the spatial data for the Netherlands
con <- url("http://gadm.org/data/rda/NLD_adm0.RData")
print(load(con))
close(con)
class(gadm)
bbox(gadm)
> min max
>r1 3.360782 7.29271
>r2 50.755165 53.55458
Допустим, опросы проводились в этой области:
bbox(surveys)
> min max
>r1 4.000 7.000
>r2 51.000 53.000
Как я могу вырезать эту область SpatialPolygonsDataFrame?
РЕДАКТИРОВАТЬ: этот вопрос, кажется, отвечает на мой вопрос. Приносим извинения за недостаточный поиск (хотя комментарии дали мне некоторое представление о том, куда обратиться с rgeos). Однако gIntersection
вызывает сбой R ...
gIntersection
в настоящее время, но это занимает довольно много времени. Не уверен, что это нормально при работе с шейп-файлами ... - person jslefche   schedule 19.04.2012