Comparar entidad (Administración de datos)

Resumen

Compara dos capas o clases de entidades y devuelve los resultados de la comparación.

Uso

  • Esta herramienta devuelve mensajes que muestran el resultado de la comparación. La ejecución de la herramienta se detendrá de forma predeterminada cuando encuentre la primera diferencia entre las entradas. Para informar de todas las diferencias, active el parámetro Continuar comparación.

  • Si las diferencias notificadas entre los datasets de entrada se deben a la adición o eliminación de registros, solo es válida la primera diferencia notificada. Todas las diferencias que se notifiquen después de la adición o eliminación se deberán a la comparación carente de secuencia. Las herramientas de comparación no intentan encontrar el siguiente conjunto de registros coincidentes después de que se encuentre un registro agregado o eliminado.

  • Esta herramienta puede informar de las diferencias de geometría, valores tabulares, referencia espacial y definiciones de campo.

  • Se pueden especificar múltiples campos de ordenamiento. Se ordena el primer campo, luego el segundo campo, y así sucesivamente, en orden ascendente. El ordenamiento por campo común en ambos datasets de entrada asegura que se está comparando la misma fila de cada dataset de entrada.

  • De forma predeterminada, el parámetro Tipo de comparación se establece en Todo. Esto significa que se verificarán todas las propiedades de las entidades que se están comparando, incluidos referencia espacial, propiedades del campo, atributos y geometría. Especifique un tipo de comparación diferente para comparar propiedades concretas de las entidades.

  • El parámetro Ignorar opciones ofrece la flexibilidad de omitir propiedades, como atributos de medida, atributos z, atributos de Id. de punto y propiedades de extensión. Dos clases de entidades pueden ser idénticas, pero, aún así, una puede tener medidas y coordenadas z y la otra no. La opción Ignorar propiedades de extensión hace referencia a la información adicional agregada a una tabla o clase de entidad. Por ejemplo, las entidades de dos clases de entidad de anotación pueden ser idénticas, pero las clases de entidad pueden tener distintas propiedades de extensión, como diferentes símbolos en el conjunto de símbolos y diferente comportamiento de edición.

  • El valor del parámetro Tolerancia XY predeterminado está determinada por la tolerancia XY predeterminada del valor del parámetro Entidades base de entrada. Para minimizar el error, el valor utilizado para la tolerancia de comparación debe ser tan pequeño como sea posible. Cuando se especifica el valor 0, se produce una coincidencia exacta.

  • Los valores predeterminados de los parámetros Tolerancia M y Tolerancia Z están determinados por la tolerancia M y la tolerancia Z predeterminadas del valor del parámetro Entidades base de entrada. Las unidades son las mismas que las de las del valor del parámetro Entidades base de entrada. Cuando se especifica el valor 0, se produce una coincidencia exacta.

  • Cuando se utiliza la opción Solo geometría en el parámetro Tipo de comparación, las referencias espaciales deben coincidir. Si las referencias espaciales de las entradas no coinciden, se notifica una diferencia entre las entradas. Si los sistemas de coordenadas de las entradas son distintos, las entidades se considerarán diferentes. Esta herramienta no proyecta entidades al vuelo.

  • El parámetro Omitir campos es una lista de campos que no estarán incluidos en la comparación de conteo de campo; se ignoran las definiciones de campo y los valores tabulares.

  • Las tolerancias de atributos sólo se pueden especificar para los tipos de campos numéricos.

  • El valor del parámetro Archivo de comparación de salida tendrá registradas todas las similitudes y diferencias entre los datasets de entrada. Este archivo es un archivo de texto delimitado por comas que se puede ver y utilizar como una tabla en ArcGIS. Por ejemplo, se puede consultar para obtener todos los valores de Id. de objeto para todas las filas que sean diferentes. El campo has_error indica que el registro contiene un error. El valor True indica una diferencia.

  • Cuando utilice esta herramienta en Python, obtenga el estado de la comparación a partir del objeto Result devuelto mediante el empleo de la posición de índice de 1 (result[1]). El valor será 'true' si no se encuentra ninguna diferencia y 'false' si se detecta alguna diferencia.

    Más información sobre el uso de herramientas en Python

Parámetros

EtiquetaExplicaciónTipo de datos
Entidades base de entrada

Datos que se compararán con el valor del parámetro Entidades test de entrada. El valor de este parámetro son los datos que ha declarado válidos. Estos datos base tienen el contenido y la información correctos.

Feature Layer
Entidades test de entrada

Datos que se compararán con el valor del parámetro Entidades base de entrada. El valor de este parámetro son los datos que modificó al editar o compilar información nueva.

Feature Layer
Campo de ordenamiento

Campo o campos que se utilizarán para ordenar registros en las entradas. Los registros se clasifican en orden ascendente. El ordenamiento por campo común en ambas entradas asegura que se está comparando la misma fila de cada dataset de entrada.

Value Table
Comparar tipo
(Opcional)

Especifica el tipo de comparación que se utilizará.

  • TodoSe compararán todas las propiedades de las clases de entidades. Esta es la opción predeterminada.
  • Solo geometríaSólo se compararán las geometrías de las clases de entidades.
  • Solo atributosSolo se compararán los atributos y los valores de las clases de entidades.
  • Solo esquemaSólo se compararán los esquemas de las clases de entidades.
  • Solo referencia espacialSólo se compararán las referencias espaciales de las dos clases de entidades.
String
Ignorar opciones
(Opcional)

Especifica las propiedades que no se compararán.

  • Ignorar MsLas propiedades de medición no se compararán.
  • Ignorar ZsLas propiedades de elevación no se compararán.
  • Ignorar PointIDsLas propiedades de Id. de punto no se compararán.
  • Ignorar propiedades de extensiónLas propiedades de extensión no se compararán.
  • Ignorar subtiposLos subtipos no se compararán.
  • Ignorar clases de relaciónLas clases de relación no se compararán.
  • Ignorar clases de representaciónLas clases de representación no se compararán.
  • Ignorar alias de campoLos alias de campo no se compararán.
String
Tolerancia XY
(Opcional)

Distancia que determinará el rango en el cual las entidades se considerarán iguales. Para minimizar el error, el valor del parámetro debe ser tan pequeño como sea posible. De forma predeterminada, la tolerancia de comparación es la tolerancia XY de las entidades base de entrada.

Linear Unit
Tolerancia M
(Opcional)

Distancia mínima entre las medidas antes de que se consideren iguales.

Double
Tolerancia Z
(Opcional)

Distancia mínima entre las coordenadas Z antes de que se consideren iguales.

Double
Tolerancia de atributo
(Opcional)

Valor numérico que determinará el rango en el cual los valores de atributos se consideran iguales. Este parámetro solo se aplica a los tipos de campos numéricos.

Value Table
Omitir campos
(Opcional)

El campo o los campos que se omitirán durante la comparación. Se ignorarán las definiciones de campo y los valores tabulares para estos campos.

String
Continuar comparación
(Opcional)

Especifica si la comparación continuará tras encontrar la primera diferencia entre las entradas.

  • Desactivado: la herramienta se detendrá tras encontrar la primera diferencia. Esta es la opción predeterminada.
  • Activado: la herramienta continuará tras encontrar la primera diferencia.

Boolean
Archivo de comparación de salida
(Opcional)

Archivo de salida que contendrá todas las similitudes y diferencias entre las entradas. Este archivo es un archivo de texto delimitado por comas que se puede ver y utilizar como una tabla en ArcGIS.

Archivo de salida que contendrá todas las similitudes y diferencias entre las entradas. Este archivo es un archivo de texto delimitado por comas que se puede ver y utilizar como una tabla en ArcGIS.

File

Salida derivada

EtiquetaExplicaciónTipo de datos
Estado de comparación

El estado de comparación será 'true' cuando no se encuentren diferencias y 'false' cuando se encuentren diferencias.

Boolean

arcpy.management.FeatureCompare(in_base_features, in_test_features, sort_field, {compare_type}, {ignore_options}, {xy_tolerance}, {m_tolerance}, {z_tolerance}, {attribute_tolerances}, {omit_field}, {continue_compare}, {out_compare_file})
NombreExplicaciónTipo de datos
in_base_features

Datos que se compararán con el valor del parámetro in_test_features. El valor de este parámetro son los datos que ha declarado válidos. Estos datos base tienen el contenido y la información correctos.

Feature Layer
in_test_features

Datos que se compararán con el valor del parámetro in_base_features. El valor de este parámetro son los datos que modificó al editar o compilar información nueva.

Feature Layer
sort_field
[sort_field,...]

Campo o campos que se utilizarán para ordenar registros en las entradas. Los registros se clasifican en orden ascendente. El ordenamiento por campo común en ambas entradas asegura que se está comparando la misma fila de cada dataset de entrada.

Value Table
compare_type
(Opcional)

Especifica el tipo de comparación que se utilizará.

  • ALLSe compararán todas las propiedades de las clases de entidades. Esta es la opción predeterminada.
  • GEOMETRY_ONLYSólo se compararán las geometrías de las clases de entidades.
  • ATTRIBUTES_ONLYSolo se compararán los atributos y los valores de las clases de entidades.
  • SCHEMA_ONLYSólo se compararán los esquemas de las clases de entidades.
  • SPATIAL_REFERENCE_ONLYSólo se compararán las referencias espaciales de las dos clases de entidades.
String
ignore_options
[ignore_options,...]
(Opcional)

Especifica las propiedades que no se compararán.

  • IGNORE_MLas propiedades de medición no se compararán.
  • IGNORE_ZLas propiedades de elevación no se compararán.
  • IGNORE_POINTIDLas propiedades de Id. de punto no se compararán.
  • IGNORE_EXTENSION_PROPERTIESLas propiedades de extensión no se compararán.
  • IGNORE_SUBTYPESLos subtipos no se compararán.
  • IGNORE_RELATIONSHIPCLASSESLas clases de relación no se compararán.
  • IGNORE_REPRESENTATIONCLASSESLas clases de representación no se compararán.
  • IGNORE_FIELDALIASLos alias de campo no se compararán.
String
xy_tolerance
(Opcional)

Distancia que determinará el rango en el cual las entidades se considerarán iguales. Para minimizar el error, el valor del parámetro debe ser tan pequeño como sea posible. De forma predeterminada, la tolerancia de comparación es la tolerancia XY de las entidades base de entrada.

Linear Unit
m_tolerance
(Opcional)

Distancia mínima entre las medidas antes de que se consideren iguales.

Double
z_tolerance
(Opcional)

Distancia mínima entre las coordenadas Z antes de que se consideren iguales.

Double
attribute_tolerances
[[Field, {Tolerance}],...]
(Opcional)

Valor numérico que determinará el rango en el cual los valores de atributos se consideran iguales. Este parámetro solo se aplica a los tipos de campos numéricos.

Value Table
omit_field
[omit_field,...]
(Opcional)

El campo o los campos que se omitirán durante la comparación. Se ignorarán las definiciones de campo y los valores tabulares para estos campos.

String
continue_compare
(Opcional)

Especifica si la comparación continuará tras encontrar la primera diferencia entre las entradas.

  • NO_CONTINUE_COMPARELa herramienta se detendrá tras encontrar la primera diferencia. Esta es la opción predeterminada.
  • CONTINUE_COMPARELa herramienta continuará tras encontrar la primera diferencia.
Boolean
out_compare_file
(Opcional)

Archivo de salida que contendrá todas las similitudes y diferencias entre las entradas. Este archivo es un archivo de texto delimitado por comas que se puede ver y utilizar como una tabla en ArcGIS.

File

Salida derivada

NombreExplicaciónTipo de datos
compare_status

El estado de comparación será 'true' cuando no se encuentren diferencias y 'false' cuando se encuentren diferencias.

Boolean

Muestra de código

Ejemplo 1 de FeatureCompare (ventana de Python)

La siguiente secuencia de comandos de la ventana de Python muestra cómo utilizar la función FeatureCompare de modo inmediato.

import arcpy
arcpy.management.FeatureCompare(
    'C:/Workspace/baseroads.shp', 'C:/Workspace/newroads.shp', 'ROAD_ID', 
    'ALL', ['IGNORE_M', 'IGNORE_Z'], '0.001 METERS', 0, 0,
    [['Shape_Length', 0.001]], '#', 'CONTINUE_COMPARE',
    'C:/Workspace/roadcompare.txt')
Ejemplo 2 de FeatureCompare (Acos) (script independiente)

El siguiente ejemplo muestra cómo utilizar la función FeatureCompare en un script independiente.

# Name: FeatureCompare.py
# Description: Compare two feature classes and return comparison result.

# Import system modules 
import arcpy

# Set local variables
base_features = "C:/Workspace/baseroads.shp"
test_features = "C:/Workspace/newroads.shp"
sort_field = "ROAD_ID"
compare_type = "ALL"
ignore_option = ["IGNORE_M", "IGNORE_Z"]
xy_tolerance = "0.001 METERS"
m_tolerance = 0
z_tolerance = 0
attribute_tolerance = [["Shape_Length", 0.001]]
omit_field = "#"
continue_compare = "CONTINUE_COMPARE"
compare_file = "C:/Workspace/roadcompare.txt"
 
# Process: FeatureCompare
compare_result = arcpy.management.FeatureCompare(
    base_features, test_features, sort_field, compare_type, ignore_option, 
    xy_tolerance, m_tolerance, z_tolerance, attribute_tolerance, omit_field, 
    continue_compare, compare_file)

print(compare_result[1])
print(arcpy.GetMessages())

Entornos

Esta herramienta no utiliza ningún entorno de geoprocesamiento.

Información de licenciamiento

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

Temas relacionados