Eliminar entidades (Administración de datos)
Resumen
Elimina todas o el subconjunto seleccionado de filas desde la entrada.
Si las entidades de entrada son de una clase de entidad o tabla, se eliminarán todas las filas. Si las entidades de entrada son de una capa sin selección, se eliminarán todas las entidades.
Uso
-
Esta herramienta acepta capas con selecciones como entrada y eliminará solo las entidades que estén seleccionadas. Para eliminar entidades específicas de una clase de entidad, convierta la clase de entidad en una capa utilizando Crear capa de entidades o agregándola al visualizador de ArcMap. Se puede aplicar una selección utilizando las herramientas Seleccionar capa por atributo o Seleccionar capa por ubicación o consultando una capa de mapa o seleccionando entidades con la flecha de selección en ArcMap.
-
Si la entrada es una capa y esa capa no tiene una selección, se eliminarán todas las entidades. Si se introduce una clase de entidad, todas las entidades se eliminarán.
Nota:Eliminar todas las filas de una clase de entidad con un gran número de filas puede ser lento. Si su intención es eliminar todas las filas en la clase de entidad, debe considerar utilizar la herramienta Truncar tabla en su lugar. Consulte la documentación de Truncar tabla para conocer declaraciones importantes de prevención sobre su uso.
-
Esta herramienta elimina la geometría y los atributos de las Entidades de entrada.
El entorno Extensión de salida se distingue por esta herramienta. Solo las entidades que se encuentran dentro de o intersecan el entorno de la extensión de salida se eliminarán. Si la capa de entrada tiene una selección, solo las entidades seleccionadas que están dentro o intersecan la extensión de salida se eliminarán.
-
Al trabajar en ArcMap y usar una capa con selecciones como entrada, usando esta herramienta en una sesión de edición le permitirá deshacer la operación Eliminar entidades mediante deshacer/rehacer.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_features |
Clase de entidad, shapefile o capa que contiene las entidades que se eliminarán. | Feature Layer |
Ejemplo de código
La siguiente secuencia de comandos de la ventana de Python muestra cómo utilizar la herramienta DeleteFeatures en el modo inmediato.
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.CopyFeatures_management("majorrds.shp", "C:/output/output.gdb/majorrds2") arcpy.DeleteFeatures_management("C:/output/output.gdb/majorrds2")
La siguiente secuencia de comandos independiente demuestra cómo utilizar la herramienta DeleteFeatures para eliminar las entidades basadas en una expresión.
# Name: DeleteFeatures_Example2.py # Description: Delete features from a feature class based on an expression # Import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data/airport.gdb" # Set local variables inFeatures = "parcels" outFeatures = "C:/output/output.gdb/new_parcels" tempLayer = "parcelsLayer" expression = arcpy.AddFieldDelimiters(tempLayer, "PARCEL_ID") + " = 'Cemetery'" try: # Execute CopyFeatures to make a new copy of the feature class arcpy.CopyFeatures_management(inFeatures, outFeatures) # Execute MakeFeatureLayer arcpy.MakeFeatureLayer_management(outFeatures, tempLayer) # Execute SelectLayerByAttribute to determine which features to delete arcpy.SelectLayerByAttribute_management(tempLayer, "NEW_SELECTION", expression) # Execute GetCount and if some features have been selected, then # execute DeleteFeatures to remove the selected features. if int(arcpy.GetCount_management(tempLayer).getOutput(0)) > 0: arcpy.DeleteFeatures_management(tempLayer) except Exception as e: # If an error occurred, print line number and error message import traceback import sys tb = sys.exc_info()[2] print("Line {0}".format(tb.tb_lineno)) print(e.message)
Entornos
- Extensión
Solo se eliminarán las entidades que estén en la extensión o la intersequen.