Effectuer des jointures spatiales

La jointure spatiale est un problème classique en géomatique – transférer des attributs d’une couche à une autre en se basant sur leur relation spatiale. Dans QGIS, cette fonctionnalité est disponible à travers l’outil Joindre les attributs par localisation.

Description de l’exercice

Nous utiliserons 2 couches – un fichier shape des limites des arrondissements de la ville de New York et un autre des d’emplacements de maisons de santé à New York. Nous utiliserons la technique de la jointure spatiale pour trouver l’occupation en maisons de santé pour chacun des arrondissements.

Autres compétences que vous allez développer

  • Supprimer les colonnes depuis la table attributaire d’une couche.

Récupérer les données

NYC Open Data Portal est une excellente source de données gratuites pour la ville de New York.

  1. Télécharger le fichier Borough Boundaries zip en utilisant l’option “Export” sur le portail.

../_images/1102.png
  1. Télécharger le fichier Nursing Homes zip en utilisant l’option “Export” sur le portail.

../_images/247.png

Par soucis de simplicité, vous pouvez télécharger une copie des jeux de données depuis les liens ci-dessous :

nybb_12c.zip

OEM_NursingHomes_001.zip

Procédure

  1. Aller à Couche ‣ Ajouter une couche vectorielle. Parcourir jusqu’au fichier zip téléchargé zip nybb_12c.zip et sélectionner Ouvrir.

../_images/328.png
  1. Sélectionner la couche nybb.shp et cliquer sur OK.

../_images/420.png
  1. Répéter les étapes 3 et 4 pour l’autre fichier OEM_NursingHomes_001.zip et charger la couche OEM_NursingHomes_001.shp. Une fois les deux couches chargées, cliquer droit sur la couche OEM_NursingHomes_001 et sélectionner Ouvrir la table des attributs.

../_images/521.png
  1. Examine the attributes available for each feature. Since our task is to calculate the total nursing home capacity for each borough, we can use the attribute Capacity which can join to the boundaries layer.
../_images/620.png
  1. Go to Vector ‣ Data Mangement Tools ‣ Join attributes by location.
../_images/719.png
  1. The Target vector layer is the one we want to add the attributes to. In our case, this will be the boroughs boundary nybb layer. The Join vector layer will be the nursing homes OEM_NursingHomes_001 layer. As we want to sum the capacity of nursing homes, select Take summary of intersecting features and choose Sum. Name the output file as nyc_borough_join.shp. In the Output table select Keep all records`.
../_images/818.png
  1. Once the process finishes, select Yes when asked if you want to add the layer to TOC. The new layer nyc_borough_join would have the features from nybb layer along with spatially joined attributes from OEM_NursingHomes_001 layer. Right-click on the layer and select Open Attribute Table.
../_images/916.png
  1. You will see a column SUMCapacit in the attribute table. This is the sum of the Capacity attribute for the nursing homes that fall within each borough feature.
../_images/1017.png
  1. This is the answer we are looking for. But there are extra columns that we do not need in our output. Let’s clean up our output. Click on the Toggle editing button and then the Delete column button.
../_images/1120.png
  1. Press Control-A to select all columns in the Delete Attributes dialog. Next hold the Control key and de-select the columns you want to keep. Click OK.
../_images/1219.png
  1. In the attribute table, click Toggle editing button again to save the changes.
../_images/1316.png
  1. Back in the QGIS Canvas, use the Identify tool to verify that the output file has the desired attributes for each burough feature.
../_images/1415.png
comments powered by Disqus

This work is licensed under a Creative Commons Attribution 4.0 International License