Disponible con una licencia de Spatial Analyst.
Resumen
Establecer nulos establece las ubicaciones de celda identificadas en NoData según los criterios especificados. Devuelve NoData si una evaluación condicional es verdadera y devuelve un valor especificado por otro ráster si es falsa.
Más información sobre cómo establecer valores de celda en NoData con Establecer nulos
Ilustración
Uso
Si la evaluación de la cláusula where es verdadera, a la ubicación de celda en el ráster de salida se le asignará NoData. Si la evaluación es falsa, el ráster de salida será definido por el ráster falso o el valor constante de entrada.
Si no se especifica cláusula where, el ráster de salida tendrá NoData siempre que el ráster condicional no sea 0.
El ráster condicional de entrada no incide en si el tipo de datos de salida es entero o de punto flotante. Si el ráster falso de entrada (o valor constante) contiene valores de punto flotante, el ráster de salida será de punto flotante. Si contiene valores enteros, la salida será un ráster entero.
En la Expresión 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.
La longitud máxima de la expresión lógica es de 4.096 caracteres.
Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento válidos para esta herramienta.
Sintaxis
SetNull (in_conditional_raster, in_false_raster_or_constant, {where_clause})
Parámetro | Explicación | Tipo de datos |
in_conditional_raster | Ráster de entrada que representa el resultado verdadero o falso de la condición deseada. Puede ser de tipo entero o punto flotante. | Raster Layer |
in_false_raster_or_constant | La entrada cuyos valores se utilizan como valores de la celda de salida si la condición es falsa. Puede ser un ráster de punto flotante o entero, o un valor constante. | Raster Layer; Constant |
where_clause (Opcional) | La expresión lógica que determina cuáles de las celdas de entrada deben ser verdaderas o falsas. 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 | El ráster de salida. Si la evaluación condicional es verdadera, se devuelve NoData. Si es falsa, se devuelve el valor del segundo ráster de entrada. | Raster |
Muestra de código
Ejemplo 1 de SetNull (ventana de Python)
En este ejemplo, toda celda de entrada con un valor menor a 0 se establecerá en NoData en el ráster de salida y las celdas restantes mantendrán el valor original.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outSetNull = SetNull("elevation", "elevation", "VALUE < 0")
outSetNull.save("C:/sapyexamples/output/outsetnull.img")
Ejemplo 2 de SetNull (secuencia de comandos independiente)
En este ejemplo, toda celda de entrada con un valor que no sea 7 se establecerá en NoData y las celdas que son 7 se establecerán en un valor de 1 en la salida.
# Name: SetNull_Ex_02.py
# Description: Returns NoData if a conditional evaluation is
# true and returns the value specified by another
# raster if it is false, on a cell-by-cell basis.
# 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 = "landclass"
inFalseRaster = 1
whereClause = "VALUE <> 7"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute SetNull
outSetNull = SetNull(inRaster, inFalseRaster, whereClause)
# Save the output
outSetNull.save("C:/sapyexamples/output/outsetnull")
Entornos
Información sobre licencias
- ArcGIS Desktop Basic: Requiere Spatial Analyst
- ArcGIS Desktop Standard: Requiere Spatial Analyst
- ArcGIS Desktop Advanced: Requiere Spatial Analyst