7 votos

Eliminación de un gran número de funciones

He estado teniendo problemas con la eliminación de un gran número de características (> 1,000,000) de una clase de entidad en ArcMap. Me parece que no puede obtener más de un par de miles antes de que se congela de forma indefinida, a veces de la noche a la mañana, antes de estrellarse.

La selección de las funciones que necesito y la exportación no es una opción aquí porque tengo que trabajar dentro de un gdb con una estructura predeterminada, y prefiero simplemente eliminar la cuenta y no meterse con la eliminación/sustitución de capas enteras.

La capa contiene aprox. 1.2 mil registros. Es una geodatabase de archivos.

Alguna idea?

1voto

Simon Puntos 4162

Lo que acabé haciendo fue crear un nuevo GDB basado en el esquema de la antigua, y exportado sólo las características que necesitaba para el nuevo GDB. A continuación, eliminó la antigua y cambió el nombre de archivo de la nueva para que coincida. No es una solución ordenada, pero funciona. ArcMap es mucho más susceptible de exportar un gran número de características que de eliminarlas por alguna razón desconocida para mí.

1voto

dchanson Puntos 29

Puede utilizar un UpdateCursor de arcpy para eliminar las características que desee. Como esto

 import arcpy
ds = 'c:\\temp\\test.gdb\\testdata'
cur,row = None, None
cur = arcpy.UpdateCursor(ds)
for row in cur:
    cur.deleteRow(row)
 

Si desea seleccionar sólo ciertos registros, utilice una instrucción if antes de la eliminación en el bucle.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X