Joindre les attributs d’un polygone (Analyse criminelle et sécurité)

Synthèse

Joint les attributs issus d’entités surfaciques en entrée à des entités ponctuelles en entrée.

Utilisation

  • L’outil transfère les attributs depuis la valeur du paramètre Entités surfaciques en entrée vers la valeur du paramètre Entités ponctuelles cible lorsqu’une entité surfacique est entièrement située dans ou contenue par une entité surfacique.

  • Par défaut, aucun attribut de la valeur Entités surfaciques en entrée n’est ajouté aux attributs de la valeur Entités ponctuelles cible. Vous pouvez définir les attributs à ajouter à la valeur Entités ponctuelles cible en les spécifiant dans le paramètre Champs de jointure.

  • Si une entité figurant dans la valeur Entités ponctuelles cible est contenue par plusieurs entités de la valeur Entités surfaciques en entrée, le point obtient l’attribut à partir du polygone avec la valeur ID d’objet la plus élevée.

Paramètres

ÉtiquetteExplicationType de données
Target Point Features (Entités ponctuelles cible)

Entités ponctuelles qui seront mises à jour avec les attributs de la valeur du paramètre Entités surfaciques en entrée.

Entités ponctuelles qui seront mises à jour avec les attributs de la valeur du paramètre in_features.

Feature Layer
Input Polygon Features (Entités surfaciques en entrée)

Entités surfaciques en entrée.

Feature Layer
Champ de jointure
(Facultatif)

Champs des entités surfaciques en entrée qui seront ajoutés aux entités ponctuelles cible.

Field
Remplacer les champs avec correspondance dans les entités ponctuelles cible
(Facultatif)

Indique si les champs existants de la valeur du paramètre Entités ponctuelles cible dont les noms correspondent à des champs de la valeur du paramètre Champs de jointure seront remplacés.

  • Activé : les champs avec correspondance seront remplacés.
  • Désactivé : les champs existants ne seront pas remplacés et de nouveaux champs seront générés. Il s’agit de l’option par défaut.
Boolean

Sortie obtenue

ÉtiquetteExplicationType de données
Entités ponctuelles mises à jour

Entités ponctuelles mises à jour.

Feature Layer

arcpy.ca.JoinAttributesFromPolygon(target_features, in_features, {fields}, {overwrite_option})
NomExplicationType de données
target_features

Entités ponctuelles qui seront mises à jour avec les attributs de la valeur du paramètre in_features.

Feature Layer
in_features

Entités surfaciques en entrée.

Feature Layer
fields
[fields,...]
(Facultatif)

Champs des entités surfaciques en entrée qui seront ajoutés aux entités ponctuelles cible.

Field
overwrite_option
(Facultatif)

Indique si les champs existants de la valeur du paramètre target_features dont les noms correspondent à des champs de la valeur du paramètre fields seront remplacés.

  • OVERWRITELes champs avec correspondance seront remplacés.
  • NO_OVERWRITELes champs existants ne seront pas remplacés et de nouveaux champs seront générés. Il s’agit de l’option par défaut.
Boolean

Sortie obtenue

NomExplicationType de données
out_features

Entités ponctuelles mises à jour.

Feature Layer

Exemple de code

Exemple 1 d’utilisation de l’outil JoinAttributesFromPolygon (fenêtre Python)

Le script ci-dessous pour la fenêtre Python montre comment utiliser la fonction JoinAttributesFromPolygon en mode immédiat.

import arcpy
arcpy.env.workspace = r"C:\data\city_pd.gdb"
arcpy.ca.JoinAttributesFromPolygon("Arrests", "Precincts")
Exemple 2 d’utilisation de l’outil JoinAttributesFromPolygon (script autonome)

Le script Python ci-dessous illustre l’utilisation de la fonction JoinAttributesFromPolygon dans un script autonome.

# Name: JoinAttributesFromPolygon.py
# Description:  Add police precinct ID and name to arrests, then print the number of arrests by precinct.

# import system modules 
import arcpy

# Set environment settings
arcpy.env.workspace = r"C:\data\city_pd.gdb"

# Set local variables
target_features = "Arrests"
in_features = "Precincts"
join_fields = ['districtid', 'name'] # Police Precinct ID and Name

# Run JoinAttributesFromPolygon
arcpy.ca.JoinAttributesFromPolygon(target_features, in_features, join_fields)

# Print count of arrest by precinct
count_dict = {}
with arcpy.da.SearchCursor(target_features, 'name') as cursor:
    for row in cursor:
        try:
            count_dict[row[0]] += 1
        except:
            count_dict[row[0]] = 1

for precinct, count in count_dict.items():
    print("Name: " + precinct + " Arrests: " + str(count))

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes