Todos los meses tengo que QA / QC algunos datos de calles de todo un condado (más de 47,000 registros). El primer paso es comparar los dos archivos. Actualmente, estoy usando una herramienta que se creó internamente a través de VBA hace aproximadamente 5 años. Funciona compara los dos archivos e informa las diferencias en función de algunos factores (registros agregados, registros eliminados, cambios de dirección, cambios de ciudad, longitud de segmento / cambios de vértices). Luego los exporto a archivos de forma individuales. Además, la herramienta funciona ArcGIS 9.3
pero ya no funcionará enArcGIS 10.1
La herramienta funciona muy bien, pero tarda aproximadamente una hora en completarse.
He comenzado a trabajar en mejorar esta herramienta para acelerar el rendimiento. He examinado una variedad de métodos, incluidos el Compare Feature Tool
y Select by Location
.
Ambas herramientas funcionan significativamente más rápido, sin embargo, no parecen capturar todo lo que necesito. El gran problema que tengo con el Compare Feature Tool
es que no puedo elegir en qué campo comparar. El valor predeterminado es ObjectID cuando necesito comparar por Segment_ID. No hay una opción para seleccionar eso.
¿Alguien tiene una buena solución o ideas sobre cómo lograr una comparación completa como la que he descrito?
Por alguna razón, ArcGIS no reconoce la unión que estoy intentando según la respuesta de RyanDalton.
Pero
Siguiendo el consejo de una unión, descubrí cómo encontrar los registros agregados y las diferencias de registros eliminados en los dos archivos:
- Unir el archivo de forma del mes anterior al archivo de forma del mes actual a través del campo Segment_ID
- Realizar una consulta de definición donde Segment_ID IS NULL
- Exportar eso a un nuevo shapefile (características adicionales)
Luego invierto las uniones y encuentro las características eliminadas
Todavía estoy trabajando para encontrar las otras diferencias enumeradas y luego unirlas en un modelo.
Puedo encontrar todos los registros que han cambiado realizando una selección por registros de ubicación de uno de los conjuntos de datos que son idénticos al otro conjunto de datos. Luego cambio la selección y me da todos los registros que no son idénticos.
Lo pondré todo en un modelo y espero que funcione igual de bien.
Segment_ID
en su tabla de salida.En mi experiencia, la función de comparación de características siempre usa FID u ObjectID como base de la comparación, incluso si segmento_id está seleccionado como Ordenar campo. Los FID de Shapefile se reciclan (reordenan), por lo que después de algunas ediciones, muchos, si no todos, los FID son diferentes para sus geografías correspondientes. Por lo tanto, tendrán un error de comparación de características "verdadero". Si usa un ObjectID de GeoDatabase o GISquirrel, los ID no se reciclan y puede confiar en esta herramienta. Debe mantener las bases de datos en un tack durante el período de tiempo para que los ObjectIds nunca se reordenen.
Independientemente de que la descripción del campo de clasificación en la ayuda de la herramienta GP sea MUY engañosa. Esta herramienta sería tremenda si la base de comparación pudiera ser el ID_segmento.
fuente