Estadísticas de bloque (Spatial Analyst)

Resumen

Divide la entrada en bloques no superpuestos y calcula las estadísticas de los valores dentro de cada bloque. El valor se asigna a todas las celdas de cada bloque en la salida.

Más información sobre cómo funciona Estadísticas de bloques

Ilustración

Valores de entrada y salida de la herramienta Estadísticas de bloque para una vecindad rectangular con el conjunto de estadísticas Máximo
OutRas = BlockStatistics(InRas1, NbrRectangle(3,3,"CELL"), "MAXIMUM", "DATA")

Uso

  • Existen varias formas de vecindad y tipos de estadísticas para elegir. Las estadísticas disponibles dependen del tipo de ráster de entrada.

  • Cuando se especifica una vecindad circular, con forma de anillo o con forma de porción de círculo, según el tamaño de la vecindad, es probable que para el cálculo no se tengan en cuenta las celdas que no son perpendiculares al eje x o y. Sin embargo, estas ubicaciones de celda recibirán el valor resultante de los cálculos de la vecindad porque caen dentro del rectángulo mínimo de delimitación (o el bloque de salida) de estos tipos de vecindad circular.

  • Los tipos de Vecindad Irregular y Peso requieren que se especifique un Archivo kernel. Los archivos kernel deben tener una extensión de archivo .txt.

    Consulte las secciones Irregular y Peso de Cómo funciona Estadísticas de bloques para obtener información sobre la creación y el uso de archivos kernel.

  • En el caso de los rásteres de entrada de valores enteros, las opciones válidas para Tipo de estadísticas son: mayoría, máximo, valor medio, mediana, mínimo, minoría, rango, desviación estándar, suma y variedad. En el caso de los rásteres de entrada flotantes, las estadísticas válidas son: máximo, valor medio, mínimo, rango, desviación estándar y suma. No están disponibles mayoría, mediana, minoría ni variedad.

  • Si el ráster de entrada es un entero, el ráster de salida será un entero para las siguientes estadísticas: mayoría, máximo, mediana, mínimo, minoría, rango, suma y variedad. La salida será flotante para las estadísticas de valor medio y desviación estándar.

    Si el ráster de entrada es de tipo de punto flotante, la salida será de tipo flotante para todos los tipos de estadísticas disponibles.

  • Para los cálculos de mediana, si un bloque tiene una cantidad impar de celdas, se clasifican los valores y se informa del valor medio como la mediana. Si un bloque tiene un número par de celdas, se clasifican los valores y, de los dos valores centrales, se selecciona el más bajo.

  • Cuando hay un empate en los cálculos de mayoría y minoría, la salida será el más bajo de los valores coincidentes.

  • El valor del parámetro Vecindad se puede cambiar a Peso solo para las estadísticas de tipo Valor medio, Desviación estándar y Suma.

  • Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento válidos para esta herramienta.

Parámetros

EtiquetaExplicaciónTipo de datos
Ráster de entrada

El ráster en que se calcularán las estadísticas de bloque.

Raster Layer
Vecindario
(Opcional)

Las celdas del bloque de procesamiento que se utilizarán en el cálculo de estadísticas. Hay varios tipos de vecindad predefinidos para elegir, o se puede definir un kernel personalizado.

Una vez que se haya seleccionado el tipo de vecindad, se pueden establecer los demás parámetros para definir completamente la forma, el tamaño y las unidades de medida. La vecindad predeterminada es un rectángulo cuadrado con un ancho y una altura de tres celdas.

A continuación se detallan las formas de los tipos de vecindad disponibles:

  • Anillo, Radio interno, Radio externo, Tipo de unidades

    Una vecindad tipo torus (con forma de dona) definida por un radio interno y un radio externo. El anillo predeterminado tiene un radio interno de una celda y un radio externo de tres celdas.

  • Círculo, Radio, Tipo de unidades

    Una vecindad circular con un radio determinado. El radio predeterminado es tres celdas.

  • Rectángulo, Altura, Ancho, Tipo de unidades

    Una vecindad rectangular definida por el ancho y la altura. Lo predeterminado es un cuadrado de ancho y altura de tres celdas.

  • Porción de círculo, Radio, Ángulo de inicio, Ángulo de finalización, Tipo de unidades

    Una vecindad en forma de cuña definida por un radio, el ángulo de inicio y el ángulo de finalización. La cuña se extiende en el sentido contrario a las agujas del reloj desde el ángulo de inicio al ángulo de finalización. Los ángulos se especifican en grados, donde 0 o 360 representan el este. Se pueden utilizar ángulos negativos. La porción de círculo predeterminada es de 0 a 90 grados, con un radio de tres celdas.

  • Irregular, Archivo kernel

    Una vecindad personalizada con especificaciones establecidas por el archivo de texto kernel identificado.

  • Peso, Archivo kernel

    Una vecindad personalizada con especificaciones establecidas por el archivo de texto kernel identificado, que puede aplicar pesos a los miembros de la vecindad.

Para los tipos de vecindades de anillo, círculo, rectángulo y porción de círculo, las unidades de distancia para los parámetros pueden especificarse en unidades de Celda o unidades de Mapa. Las unidades de celda son las predeterminadas.

Para las vecindades de kernel, la primera línea del archivo kernel define el ancho y la altura de la vecindad en números de celdas. Las líneas siguientes indican cómo se procesará el valor de entrada que se corresponde con esa ubicación en el kernel. Un valor de 0 en el archivo kernel para el tipo de vecindad irregular o de peso indica que la ubicación correspondiente no se incluirá en el cálculo. Para la vecindad irregular, un valor de 1 en el archivo kernel indica que la celda de entrada correspondiente se incluirá en la operación. Para la vecindad de peso, el valor en cada posición indica por qué se debe multiplicar el valor de la celda de entrada correspondiente. Se pueden utilizar valores positivos, negativos y decimales.

Neighborhood
Tipo de estadísticas
(Opcional)

Especifica el tipo de estadística que se calculará.

El tipo de estadísticas por defecto es Valor medio.

Si el ráster de entrada es de tipo entero, están disponibles todos los tipos de estadísticas. Si el ráster de entrada es de punto flotante, solo estarán disponibles los tipos de estadísticas Valor medio, Máximo, Mínimo, Rango, Desviación estándar y Suma.

  • Valor medioSe calculará la media (valor medio) de las celdas en la vecindad.
  • MayoríaSe identificará la mayoría (valor que se produce con mayor frecuencia) de las celdas en la vecindad.
  • MáximoSe identificará el máximo (valor superior) de las celdas en la vecindad.
  • MedianaSe calculará la mediana de las celdas en la vecindad.
  • MínimoSe identificará el mínimo (valor inferior) de las celdas en la vecindad.
  • MinoríaSe identificará la minoría (valor que se produce con menor frecuencia) de las celdas en la vecindad.
  • RangoSe calculará el rango (diferencia entre los valores superior e inferior) de las celdas en la vecindad.
  • Desviación estándarSe calculará la desviación estándar de las celdas en la vecindad.
  • SumaSe calculará la suma de las celdas en la vecindad.
  • VariedadSe calculará la variedad (el número de valores únicos) de las celdas en la vecindad.
String
Ignorar los NoData en los cálculos
(Opcional)

Especifica si los valores NoData serán ignorados por el cálculo de estadísticas.

  • Activado: si existe un valor NoData dentro de una vecindad de bloques, este se ignorará. Para determinar el valor de salida solo se utilizarán las celdas dentro de la vecindad que contengan valores de datos. Esta es la opción predeterminada.
  • Desactivado: si alguna celda de una vecindad de bloque tiene el valor de NoData, la salida de cada celda en el bloque correspondiente será NoData. La presencia de un valor NoData implica que no hay información suficiente para determinar el valor estadístico de la vecindad.
Boolean

Valor de retorno

EtiquetaExplicaciónTipo de datos
Ráster de salida

El ráster de estadísticas de bloques de salida.

Raster

BlockStatistics(in_raster, {neighborhood}, {statistics_type}, {ignore_nodata})
NombreExplicaciónTipo de datos
in_raster

El ráster en que se calcularán las estadísticas de bloque.

Raster Layer
neighborhood
(Opcional)

Las celdas del bloque de procesamiento que se utilizarán en el cálculo de estadísticas. Hay varios tipos de vecindad predefinidos para elegir, o se puede definir un kernel personalizado.

Una vez que se haya seleccionado el tipo de vecindad, se pueden establecer los demás parámetros para definir completamente la forma, el tamaño y las unidades de medida. La vecindad predeterminada es un rectángulo cuadrado con un ancho y una altura de tres celdas.

La forma de las vecindades está definida por la clase Neighborhood. Los tipos de vecindad disponibles son NbrAnnulus, NbrCircle, NbrRectangle, NbrWedge, NbrIrregular, y NbrWeight.

A continuación se detallan las formas de los tipos de vecindad disponibles:

  • NbrAnnulus({innerRadius}, {outerRadius}, {units})

    Una vecindad tipo torus (con forma de dona) definida por un radio interno y un radio externo. El anillo predeterminado tiene un radio interno de una celda y un radio externo de tres celdas.

  • NbrCircle({radius}, {units}

    Una vecindad circular con un radio determinado. El radio predeterminado es tres celdas.

  • NbrRectangle({width}, {height}, {units})

    Una vecindad rectangular definida por el ancho y la altura. Lo predeterminado es un cuadrado de ancho y altura de tres celdas.

  • NbrWedge({radius}, {startAngle}, {endAngle}, {units})

    Una vecindad en forma de cuña definida por un radio, el ángulo de inicio y el ángulo de finalización. La cuña se extiende en el sentido contrario a las agujas del reloj desde el ángulo de inicio al ángulo de finalización. Los ángulos se especifican en grados, donde 0 o 360 representan el este. Se pueden utilizar ángulos negativos. La porción de círculo predeterminada es de 0 a 90 grados, con un radio de tres celdas.

  • NbrIrregular(inKernelFile)

    Una vecindad personalizada con especificaciones establecidas por el archivo de texto kernel identificado.

  • NbrWeight(inKernelFile)

    Una vecindad personalizada con especificaciones establecidas por el archivo de texto kernel identificado, que puede aplicar pesos a los miembros de la vecindad.

Para las vecindades NbrAnnulus, Nbrcircle, NbrRectangle y NbrWedge, las unidades de distancia para los parámetros se pueden especificar en unidades de CELL o unidades de MAP. Las unidades de celda son las predeterminadas.

Para las vecindades de kernel, la primera línea del archivo kernel define el ancho y la altura de la vecindad en números de celdas. Las líneas siguientes indican cómo se procesará el valor de entrada que se corresponde con esa ubicación en el kernel. Un valor de 0 en el archivo kernel para el tipo de vecindad irregular o de peso indica que la ubicación correspondiente no se incluirá en el cálculo. Para la vecindad irregular, un valor de 1 en el archivo kernel indica que la celda de entrada correspondiente se incluirá en la operación. Para la vecindad de peso, el valor en cada posición indica por qué se debe multiplicar el valor de la celda de entrada correspondiente. Se pueden utilizar valores positivos, negativos y decimales.

Neighborhood
statistics_type
(Opcional)

Especifica el tipo de estadística que se calculará.

  • MEANSe calculará la media (valor medio) de las celdas en la vecindad.
  • MAJORITYSe identificará la mayoría (valor que se produce con mayor frecuencia) de las celdas en la vecindad.
  • MAXIMUMSe identificará el máximo (valor superior) de las celdas en la vecindad.
  • MEDIANSe calculará la mediana de las celdas en la vecindad.
  • MINIMUMSe identificará el mínimo (valor inferior) de las celdas en la vecindad.
  • MINORITYSe identificará la minoría (valor que se produce con menor frecuencia) de las celdas en la vecindad.
  • RANGESe calculará el rango (diferencia entre los valores superior e inferior) de las celdas en la vecindad.
  • STDSe calculará la desviación estándar de las celdas en la vecindad.
  • SUMSe calculará la suma de las celdas en la vecindad.
  • VARIETYSe calculará la variedad (el número de valores únicos) de las celdas en la vecindad.

El tipo de estadísticas por defecto es MEAN.

Si el ráster de entrada es de tipo entero, están disponibles todos los tipos de estadísticas. Si el ráster de entrada es de punto flotante, solo están disponibles los tipos de estadísticas MEAN, MAXIMUM, MINIMUM, RANGE, STD y SUM.

String
ignore_nodata
(Opcional)

Especifica si los valores NoData serán ignorados por el cálculo de estadísticas.

  • DATASi existe un valor NoData dentro de una vecindad de bloques, este se ignorará. Para determinar el valor de salida solo se utilizarán las celdas dentro de la vecindad que contengan valores de datos. Esta es la opción predeterminada.
  • NODATASi alguna celda de una vecindad de bloque tiene el valor de NoData, la salida de cada celda en el bloque correspondiente será NoData. La presencia de un valor NoData implica que no hay información suficiente para determinar el valor estadístico de la vecindad.
Boolean

Valor de retorno

NombreExplicaciónTipo de datos
out_raster

El ráster de estadísticas de bloques de salida.

Raster

Muestra de código

Ejemplo 1 de BlockStatistics (ventana de Python)

En este ejemplo, se calcula el valor de celda mínimo dentro de cada vecindad de anillo no superpuesto (forma de donut) en el ráster de entrada.

import arcpy
from arcpy import env  
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
nbr = NbrAnnulus(1, 3, "MAP")
outBlockStat = BlockStatistics("block", nbr, "MINIMUM", "")
outBlockStat.save("C:/sapyexamples/output/blockstat")
Ejemplo 2 de BlockStatistics (secuencia de comandos independiente)

En este ejemplo, se calcula el valor de celda mínimo dentro de cada vecindad de anillo no superpuesto en el ráster de la cuadrícula de salida.

# Name: BlockStatistics_Ex_02.py
# Description: Calculates statistics for a nonoverlapping 
#              neighborhood.
# 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 = "block"
nbr = NbrAnnulus(1, 3, "MAP")

# Execute BlockStatistics
outBlockStat = BlockStatistics(inRaster, nbr, "MINIMUM", "NODATA")

# Save the output 
outBlockStat.save("C:/sapyexamples/output/blockstat")