ich einen point in Polygon
Betrieb in R. ausführen Grundsätzlich ich dieses Beispiel folgenden bin hier: https://cran.r-project.org/web/packages/sp/vignettes/over.pdfKoordinaten nach über sp R
r1 = cbind(c(180114, 180553, 181127, 181477, 181294, 181007, 180409,
180162, 180114),
c(332349, 332057, 332342, 333250, 333558, 333676, 332618, 332413, 332349)
)
r2 = cbind(c(180042, 180545, 180553, 180314, 179955, 179142, 179437,
179524, 179979, 180042),
c(332373, 332026, 331426, 330889, 330683, 331133, 331623, 332152, 332357, 332373)
)
r3 = cbind(c(179110, 179907, 180433, 180712, 180752, 180329, 179875, 179668, 179572, 179269, 178879, 178600, 178544, 179046, 179110),
c(331086, 330620, 330494, 330265, 330075, 330233, 330336, 330004, 329783, 329665, 329720, 329933, 330478, 331062, 331086)
)
r4 = cbind(c(180304, 180403,179632,179420,180304),
c(332791, 333204, 333635, 333058, 332791)
)
# dummy Polygons from points
# first: Create Polygon and then Polygons object
# for Polygons object and ID is needed!
sr1 = Polygons(list(Polygon(r1)),"r1")
sr2 = Polygons(list(Polygon(r2)),"r2")
sr3 = Polygons(list(Polygon(r3)),"r3")
sr4 = Polygons(list(Polygon(r4)),"r4")
sr = SpatialPolygons(list(sr1,sr2,sr3,sr4))
plot(sr)
# dummy data, native to R
data(meuse)
# assign coordinates to data
coordinates(meuse) = ~x + y
plot(meuse)
pointsOfInterest <- over(sr, meuse)
Das hat mir meine gewünschte ouput gibt, aber: Ich verliere den lng
und lat
Koordinaten die Punkte ... Das passiert, wenn ich coordinates(meuse) = ~x + y
ausführen und ich mache eine str
der Daten vor und nach, die Spalten x
und y
sind weg.
Wie gesagt, die 'x' und' y' Spalten gehen verloren während 'Koordinaten (meuse) = ~ x + y'. Warum das? Das scheint nicht richtig zu sein ?! Dann sollte die Problemumgehung nicht benötigt werden – Stophface
Wenn Sie 'class (meuse)' vorher und nachher überprüft hätten, hätten Sie gesehen, dass Sie nachher einen 'data.frame' und einen' SpatialPointsDataFrame' bekommen haben. Letzteres ist ein Standardobjekt für die räumliche Analyse. Wenn Sie 'x' und' y' als Koordinaten angegeben haben, stehen diese unter 'coordinates (meuse)' zur Verfügung. – lukeA