Unir atributos de polígono (Análisis de criminalidad y seguridad)

Resumen

Une atributos de entidades poligonales de entrada con entidades de puntos de entrada.

Uso

  • La herramienta transfiere atributos de Entidades poligonales de entrada a Entidades de puntos de destino cuando una entidad de punto se encuentra completamente dentro de una entidad poligonal o esta la contiene.

  • De forma predeterminada, no se incorpora ningún atributo de las Entidades poligonales de entrada a atributos de las Entidades de puntos de destino. Puede definir los atributos que se agregarán a las Entidades de puntos de destino especificándolos en el parámetro Campos de unión.

  • Cuando una entidad de las Entidades de puntos de destino se encuentra en varias entidades de las Entidades poligonales de entrada, el punto obtendrá el atributo del polígono con el mayor valor de Id. de objeto.

Sintaxis

arcpy.ca.JoinAttributesFromPolygon(target_features, in_features, fields)
ParámetroExplicaciónTipo de datos
target_features

Las entidades de punto que se actualizarán con atributos de in_features.

Feature Layer
in_features

Las entidades de polígono de entrada.

Feature Layer
fields
[fields,...]

Los campos de las Entidades poligonales de entrada que se incorporarán a las Entidades de puntos de destino.

Field

Salida derivada

NombreExplicaciónTipo de datos
out_features

Las entidades de puntos actualizadas.

Capa de entidades

Muestra de código

Ejemplo 1 de JoinAttributesFromPolygon (ventana de Python)

El siguiente script de la ventana de Python demuestra cómo utilizar la función JoinAttributesFromPolygon en modo inmediato.

import arcpy
arcpy.env.workspace = r"C:\data\city_pd.gdb"
arcpy.ca.JoinAttributesFromPolygon("Arrests", "Precincts")
Ejemplo 2 de JoinAttributesFromPolygon (script independiente)

El siguiente script de Python muestra cómo utilizar la función JoinAttributesFromPolygon en un script independiente.

# Name: JoinAttributesFromPolygon.py
# Description:  Adding police precinct id and name to arrests, then printing 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
# Execute 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))

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados