Det felaktiga sättet
När ett Spatial***DataFrame-objekt skapas finns det två sätt som de rumsliga objekten (t.ex. Polygons) kan matchas mot datarader. Det mest robusta sättet är att använda ID:n på de rumsliga objekten som matchas mot radnamnen i datan. På så sätt får du snabbt en varning om något inte stämmer. Det andra sättet bygger helt enkelt på ordning – det första rumsliga objektet antas motsvara den första dataraden.
När objektet väl är skapat baseras kopplingen enbart på ordning. Om du manipulerar data-sloten sker ingen kontroll av att de rumsliga objekten fortfarande motsvarar rätt rader. Vad innebär det i praktiken? Det är mycket riskabelt att manipulera data-sloten direkt!
För att skapa din karta över inkomst behöver du matcha inkomstdataramen med trakt-SpatialPolygonsDataFrame. För att illustrera riskerna med att manipulera @data direkt ska vi se vad som händer om du försöker tvinga in nyc_income i nyc_tracts.
Den här övningen är en del av kursen
Visualisering av geospatial data i R
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
library(sp)
# Use str() on nyc_income
# ...and on nyc_tracts@data