Vérifier la correspondance des données
Forcer vos données dans l’emplacement data ne fonctionne pas, car vous perdez la correspondance correcte entre les lignes et les objets spatiaux. Comment ajouter les données de revenu aux données de polygones ? La fonction merge() du package sp est conçue précisément pour cela.
Vous avez peut-être déjà vu merge() avec des data frames. sp::merge() a pratiquement la même structure, mais vous lui passez un objet Spatial*** et un data frame, et elle renvoie un nouvel objet Spatial*** dont l’emplacement des données est désormais la fusion de l’emplacement d’origine et du data frame. Pour réaliser cette fusion, il faut que l’objet spatial et le data frame possèdent chacun une colonne d’identifiants sur laquelle faire l’appariement.
nyc_tracts et nyc_income contiennent tous deux des colonnes avec des identifiants de « tract », ce qui en fait d’excellents candidats pour fusionner les deux jeux de données. Cependant, il est toujours recommandé de vérifier que les identifiants proposés sont uniques et qu’il existe une correspondance pour chaque ligne dans les deux jeux de données.
Vérifions cela avant de passer à la fusion.
Cet exercice fait partie du cours
Visualiser des données géospatiales avec R
Instructions
- Utilisez
any()avecduplicated()surnyc_income$tractpour vérifier que chaque ligne denyc_incomea un identifiant de tract unique. - Utilisez
any()avecduplicated()surnyc_tracts$TRACTCEpour vérifier que chaque ligne denyc_tractsa un identifiant de tract unique. - Utilisez
all()surnyc_tracts$TRACTCE %in% nyc_income$tractpour vérifier que les tracts denyc_tractssont tous présents dansnyc_income. - Utilisez
all()surnyc_income$tract %in% nyc_tracts$TRACTCEpour vérifier que les tracts denyc_incomesont tous présents dansnyc_tracts.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Check for duplicates in nyc_income
# Check for duplicates in nyc_tracts
# Check nyc_tracts in nyc_income
# Check nyc_income in nyc_tracts