Я пытаюсь выполнить пространственное соединение между данными точек и данными многоугольников.
У меня есть данные, которые указывают пространственные координаты события в моем CSV-файле A, и у меня есть другой файл, шейп-файл B, который содержит границы области в виде полигонов.
head(A)
month longitude latitude lsoa_code crime_type
1 2014-09 -1.550626 53.59740 E01007359 Anti-social behaviour
2 2014-09 -1.550626 53.59740 E01007359 Public order
3 2014-09 -1.865236 53.93678 E01010646 Anti-social behaviour
head(B@data)
code name altname
0 E05004934 Longfield, New Barn and Southfleet <NA>
1 E05000448 Lewisham Central <NA>
2 E05003149 Hawcoat <NA>
Я хочу соединить данные преступления A с моим шейп-файлом B, чтобы отобразить события преступления, которые происходят в моей области A. К сожалению, я не могу выполнить соединение атрибутов на основе, code
поскольку код в A ссылается на другие единицы, чем код в B.
Я прочитал несколько уроков и постов, но не смог найти ответ. Я старался:
joined = over(A, B)
и overlay
, но не выполнить то, что я хотел.
Есть ли способ сделать это соединение напрямую или потребуется промежуточное преобразование из А в другой формат?
Концептуально я хочу выбрать те точки A, которые попадают в code
области B (аналогично «объединению на основе пространственного расположения в ArcGIS»).
Был ли у кого-то этот вопрос и решил его?
point.in.polygon
том, сохранит ли это переменные month
и crime_type
. Ты знаешь об этом?
point.in.poly
и наконец выбрал те точки, которые попадают в соответствующие многоугольники. Благодарю.
point.in.polygon()
в упаковкеsp
?