Disponible con una licencia de Spatial Analyst.
Resumen
Extrae las celdas de un ráster según una consulta lógica.
Ilustración
Uso
Si la Cláusula where se evalúa como verdadera, se devuelve el valor de entrada original para la ubicación de celda. Si se evalúa como falsa, a la ubicación de celda se le asigna NoData.
En la cláusula Where se utiliza una consulta SQL. Consulte los temas siguientes para obtener más información sobre cómo se construyen consultas en el Generador de consultas:
Para usar una {where_clause} en Python, se debe encerrar entre comillas. Por ejemplo, "Valor > 5000".
Puede consultar la ayuda para obtener más información sobre especificar una consulta en Python.
Cualquier elemento adicional (que no sea Valor y Conteo) del ráster de entrada se elimina para el ráster de salida.
Si en la consulta se especifica un elemento del ráster de entrada distinto de Valor, se devuelve el valor de entrada original en la ubicación de celda.
Cuando un ráster multibanda se especifica como entrada, se creará un ráster multibanda nuevo como salida. Cada banda individual del ráster multibanda de entrada se analizará como corresponda.
El formato de salida predeterminado es un ráster de geodatabase. Si se especifica una pila en Cuadrícula de Esri como formato de salida, tenga en cuenta que el nombre no puede empezar con un número, utilizar espacios o tener más de nueve caracteres de longitud.
Si la entrada es una capa creada desde un ráster multibanda con más de tres bandas, la operación de extracción considerará únicamente las bandas que fueron cargadas (simbolizadas) por la capa. Como resultado, el ráster multibanda de salida sólo puede tener tres bandas, que corresponden a las utilizadas en la visualización de la capa de entrada.
Si el ráster de entrada es un entero, el ráster de salida será un entero. Si la entrada es de punto flotante, la salida será de punto flotante.
Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento válidos para esta herramienta.
Sintaxis
ExtractByAttributes (in_raster, where_clause)
Parámetro | Explicación | Tipo de datos |
in_raster | El ráster de entrada desde el cual se extraerán las celdas. | Raster Layer |
where_clause | Una expresión lógica que selecciona un subconjunto de celdas de ráster. La expresión sigue la forma general de una expresión SQL. Un ejemplo de where_clause es "VALUE > 100". | SQL Expression |
Valor de retorno
Nombre | Explicación | Tipo de datos |
out_raster | Ráster de salida que contiene los valores de las celdas extraídos del ráster de entrada. | Raster |
Muestra de código
Ejemplo 1 de ExtractByAttributes (ventana de Python)
En este ejemplo se extraen celdas de un ráster en función de una consulta lógica donde la elevación es superior a 1.000 metros.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
attExtract = ExtractByAttributes("elevation", "VALUE > 1000")
attExtract.save("c:/sapyexamples/output/attextract")
Ejemplo 2 de ExtractByAttributes (secuencia de comandos independiente)
En este ejemplo se extraen celdas de un ráster en función de una consulta lógica donde la elevación es superior a 1.000 metros.
# Name: ExtractByAttributes_Ex_02.py
# Description: Extracts the cells of a raster based on a logical query.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster = "elevation"
inSQLClause = "VALUE > 1000"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ExtractByAttributes
attExtract = ExtractByAttributes(inRaster, inSQLClause)
# Save the output
attExtract.save("c:/sapyexamples/output/attextract02")
Entornos
Información sobre licencias
- ArcGIS Desktop Basic: Requiere Análisis espacial
- ArcGIS Desktop Standard: Requiere Análisis espacial
- ArcGIS Desktop Advanced: Requiere Análisis espacial