Auf Daten in sp-Objekten zugreifen
Es ist eher ungewöhnlich, die genauen Indizes der Elemente zu kennen, die du behalten willst. Häufiger willst du nach Datenattributen filtern. Du hast gesehen, dass die zugehörigen Daten eines Spatial___DataFrame im data-Slot liegen, aber normalerweise greifst du nicht direkt auf diesen Slot zu.
Stattdessen ziehen $ und [[ beim Subsetting eines Spatial___DataFrame Spalten direkt aus dem Data Frame. Das heißt: Wenn x ein Spatial___DataFrame-Objekt ist, liefert entweder x$col_name oder x[["col_name"]] die Spalte col_name aus dem Data Frame. Denk daran wie an eine Abkürzung: Anstatt die richtige Spalte aus dem Objekt im data-Slot zu holen (also x@data$col_name), kannst du einfach x$col_name nutzen.
Lass uns zuerst bestätigen, dass das Objekt im data-Slot einfach ein ganz normaler Data Frame ist, und anschließend das Herausziehen von Spalten üben.
Diese Übung ist Teil des Kurses
Geodaten in R visualisieren
Anleitung zur Übung
- Rufe
head()undstr()(nacheinander) auf demdata-Slot voncountries_spdfauf. Prüfe, dass dieses Objekt einfach ein normaler Data Frame ist. - Ziehe die Spalte
nameauscountries_spdfmit$heraus. - Ziehe die Spalte
subregionauscountries_spdfmit[[heraus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Call head() and str() on the data slot of countries_spdf
# Pull out the name column using $
# Pull out the subregion column using [[