Establecer nulos (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.
-
La longitud máxima de la expresión lógica es de 4.096 caracteres.
-
En Python, la {where_clause} debe estar encerrada entre comillas, por ejemplo, "Valor > 5".
Sintaxis
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. | 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. Consulte la documentación si desea obtener más información acerca de la referencia SQL para expresiones de consulta utilizadas en ArcGIS y acerca de la especificación de consultas en Python. | 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 |
Ejemplo de código
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")
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")