逐層走訪階層結構
來練習如何透過存取槽(slot)來了解多邊形在 SpatialDataFrame 物件中的儲存方式。記得在 S4 物件中有兩種方法可以存取槽:
x@slot_name # 或是…
slot(x, "slot_name")
因此,若要查看 countries_spdf 的 polygons 槽,只要輸入 countries_spdf@polygons。你可以試試看,但你會得到很長、資訊量不高的輸出。我們改看高層級的結構就好。
請在主控台執行以下程式碼:
str(countries_spdf@polygons, max.level = 2)
輸出還是很長,不過請往上捲回頂端看看。這是什麼類型的物件?它其實就是一個清單(list),但每個元素裡面是另一種 sp 類別:Polygons。共有 177 個清單元素。你猜這些元素各自代表什麼呢?
我們來深入看其中一個元素。
本練習屬於課程
在 R 視覺化地理空間資料
練習說明
- 建立一個名為
one的新變數,內容為countries_spdf的polygons槽中清單的第 169 個元素。使用雙中括號擷取(也就是[[...]])來取出該元素。 - 列印
one。 - 對
one呼叫summary()。這個物件有哪些槽(slot)? - 對
one呼叫str(),並設定max.level = 2。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# 169th element of countries_spdf@polygons: one
# Print one
# Call summary() on one
# Call str() on one with max.level = 2