Dostęp do danych w obiektach sp
Rzadko zdarza się, że znasz dokładne indeksy elementów, które chcesz zachować – znacznie częściej chcesz filtrować dane na podstawie ich atrybutów. Wiesz już, że dane powiązane z obiektem Spatial___DataFrame są przechowywane w slocie data, ale zazwyczaj nie odwołujesz się do niego bezpośrednio.
Zamiast tego operatory $ i [[ użyte na obiekcie Spatial___DataFrame pobierają kolumny wprost z ramki danych. Innymi słowy, jeśli x jest obiektem Spatial___DataFrame, to wyrażenia x$col_name oraz x[["col_name"]] zwracają kolumnę col_name z tej ramki danych. Traktuj to jak skrót: zamiast sięgać po kolumnę przez slot data (czyli x@data$col_name), możesz po prostu napisać x$col_name.
Zacznijmy od potwierdzenia, że obiekt w slocie data to zwykła ramka danych, a następnie poćwiczymy pobieranie kolumn.
To ćwiczenie jest częścią kursu
Wizualizacja danych geoprzestrzennych w R
Instrukcje do ćwiczenia
- Wywołaj funkcje
head()istr()(osobno) na slociedataobiektucountries_spdf. Sprawdź, czy ten obiekt to zwykła ramka danych. - Pobierz kolumnę
namez obiektucountries_spdfza pomocą operatora$. - Pobierz kolumnę
subregionz obiektucountries_spdfza pomocą operatora[[.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Call head() and str() on the data slot of countries_spdf
# Pull out the name column using $
# Pull out the subregion column using [[