合併資料屬性
merge() 預設會根據兩個資料集裡同名的欄位進行合併。就你的情況來說,這並不合適,因為身分識別欄位在一個資料集裡叫做 tract,另一個則是 TRACTCE。為了處理這件事,merge() 提供可選引數 by.x 與 by.y,分別用來指定兩個資料集中要用來合併的欄位名稱。
merge() 會回傳一個新的 Spatial___DataFrame 物件,所以你可以用 tmap 把結果畫出來看看。
現在就來進行合併吧。
本練習屬於課程
在 R 視覺化地理空間資料
練習說明
- 使用
merge(),先傳入空間物件nyc_tracts,再傳入資料框nyc_income。指定by.x = "TRACTCE"與by.y = "tract"。將結果存成nyc_tracts_merge。 - 對
nyc_tracts_merge使用summary(),確認該物件是SpatialPolygonsDataFrame,且資料中也包含來自nyc_income的必要欄位estimate。 - 使用
tm_shape(),並加入tm_fill()圖層,建立nyc_tracts_merge的等值區塊圖,將色彩對應到estimate。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
library(sp)
library(tmap)
# Merge nyc_tracts and nyc_income: nyc_tracts_merge
# Call summary() on nyc_tracts_merge
# Choropleth with col mapped to estimate