J'essaie d'effectuer une jointure spatiale entre les données de points et les données de polygones.
J'ai des données qui indiquent les coordonnées spatiales d'un événement dans mon fichier csv A et j'ai un autre fichier, le fichier de formes B, qui contient les limites d'une zone sous forme de polygones.
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>
Je souhaite joindre les données de criminalité A à mon fichier de formes B pour cartographier les événements de criminalité qui se produisent dans ma région A. Malheureusement, je ne peux pas effectuer de jointure d'attribut code
car le code en A fait référence à des unités différentes de celles du code en B.
J'ai lu un certain nombre de didacticiels et d'articles, mais je n'ai pas trouvé de réponse. J'ai essayé:
joined = over(A, B)
et overlay
, mais n'a pas accompli ce que je voulais.
Existe-t-il un moyen de faire cette jointure directement ou une transformation intermédiaire de A vers un autre format serait-elle nécessaire?
Conceptuellement, je veux sélectionner les points de A qui tombent dans le code
zones de B (similaires à «joindre en fonction de l'emplacement spatial dans ArcGIS»).
Quelqu'un a-t-il eu ce problème et l'a-t-il résolu?
point.in.polygon
était de savoir si cela préserverait les variables month
et crime_type
. Connaissez-vous cela?
point.in.poly
et j'ai finalement sélectionné les points qui tombent dans les polygones pertinents. Merci.
point.in.polygon()
dans le paquetsp
?