Estadísticas zonales como tabla (Spatial Analyst)

Disponible con una licencia de Spatial Analyst.

Disponible con licencia de Image Analyst.

Resumen

Resume los valores de un ráster dentro de las zonas de otro dataset y reporta los resultados como una tabla.

Obtenga más información sobre cómo funcionan las herramientas de estadísticas zonales

Ilustración

Ilustración de Estadísticas zonales como tabla
ZonalStatisticsAsTable(ZoneRas, "Value", ValRas, OutTable, "DATA", "MIN_MAX_MEAN")

Uso

  • Una zona se define como todas las áreas de la entrada que tienen el mismo valor. No es necesario que las áreas sean contiguas. Puede usar tanto rásteres como entidades para la entrada de zona.

  • Si los Datos de zonas de entidad o ráster de entrada (in_zone_data en Python) son un ráster, debe ser un ráster entero.

  • Si los datos de zonas de entidad o ráster de entrada (in_zone_data en Python) son una entidad, se convertirá internamente en un ráster utilizando el tamaño de celda y la alineación de celda del ráster de valores de entrada (in_value_raster en Python).

  • Si el tamaño de celda de los datos de zonas de entidad o ráster de entrada (in_zone_data en Python) y el ráster de valores de entrada (in_value_raster en Python) es distinto, el tamaño de celda de salida será el valor Máximo de entradas y el Ráster de valores de entrada se utilizará internamente como el ráster de alineación. Si el tamaño de celda es el mismo pero las celdas no están alineadas, el ráster de valores de entrada se utilizará internamente como el ráster de alineación. En ambos casos, se desencadenará un remuestreo interno antes de realizar la operación zonal.

    Cuando las entradas de zona y de valor son rásteres del mismo tamaño de celda y las celdas están alineadas, se utilizan directamente en la herramienta y no se remuestrean internamente durante ejecución de la herramienta.

  • En el caso de que los datos de zonas de entidad o ráster de entrada (in_zone_data en Python) sean una entidad, si hay entidades de zona que no se superpongan con ningún centro de celdas del ráster de valor, dichas zonas no se convertirán al ráster de zona interno. Como resultado, las zonas no se representan en la salida. Puede administrar esta configuración determinando un valor adecuado para el entorno de tamaño de celda, que conservará el nivel de detalle deseado de las zonas de entidad y lo especificará en el entorno de análisis.

  • Si los Datos de zonas de entidad o ráster de entrada (in_zone_data en Python) son una entidad de puntos, puede haber más de un punto contenido dentro de una celda concreta del ráster de valores de entrada. Para dichas celdas, el valor de zona se determina mediante el punto con el campo ObjectID más bajo (por ejemplo, OID o FID).

  • Si los Datos de zonas de entidad o ráster de entrada (in_zone_data en Python) tienen entidades que se superponen, el análisis zonal se realizará para cada entidad individual.

  • Al especificar los Datos de zonas de entidad o ráster de entrada (in_zone_data en Python), el campo de zona predeterminado será el primer campo entero o de texto disponible. Si no existen otros campos válidos, el campo ObjectID (por ejemplo, OID o FID) será el valor predeterminado.

  • El Ráster de valores de entrada (in_value_raster en Python) puede ser entero o de punto flotante. Sin embargo, si es de tipo punto flotante, las opciones para calcular la mayoría, la minoría y la variedad no están disponibles.

  • Cuando hay un empate en los cálculos de mayoría y minoría, la salida de la zona se basa en el más bajo de los valores coincidentes. Consulte Cómo funcionan las herramientas Estadísticas zonales para obtener más información.

  • Se creará un campo o una serie de campos en la tabla de salida, según la configuración de Tipo de estadística. Cuando la entrada de valor es entero, todas las estadísticas (Mayoría, Máximo, Mediana, Mínimo, Minoría, Percentil, Rango, Desviación estándar, Suma y Variedad) están disponibles para el cálculo. Si la entrada del valor es punto flotante, las estadísticas Mayoría, Minoría y Variedad no están disponibles para el cálculo.

  • Entre los tipos de dataset ráster multidimensional admitidos se incluyen la capa ráster multidimensional, mosaico, servicio de imágenes y CRF de Esri.

  • El tipo de datos correspondiente a cada valor de los elementos de la tabla de salida depende del cálculo zonal que se está realizando. Consulte Cómo funcionan las herramientas de estadísticas zonales para conocer el comportamiento específico de una estadística.

  • La cantidad de filas en la tabla de salida es la cantidad de zonas.

  • De forma predeterminada, esta herramienta aprovecha los procesadores multinúcleo. El número máximo de núcleos que se pueden utilizar es cuatro.

    Para utilizar menos núcleos, use la configuración del entorno parallelProcessingFactor.

  • Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento que se aplican a esta herramienta.

Sintaxis

ZonalStatisticsAsTable(in_zone_data, zone_field, in_value_raster, out_table, {ignore_nodata}, {statistics_type}, {process_as_multidimensional}, {percentile_values}, {percentile_interpolation_type})
ParámetroExplicaciónTipo de datos
in_zone_data

Dataset que define las zonas.

Las zonas pueden definirse mediante un ráster entero o una capa de entidades.

Raster Layer; Feature Layer
zone_field

El campo que contiene los valores que definen cada zona.

Puede ser un campo de enteros o de cadenas de caracteres del dataset zonal.

Field
in_value_raster

Ráster que contiene los valores con los cuales se calcula una estadística.

Raster Layer
out_table

Tabla de salida que contendrá el resumen de los valores de cada zona.

El formato de la tabla está determinado por la ubicación y la ruta de salida. De forma predeterminada, la salida será una tabla de geodatabase en un espacio de trabajo de geodatabase y una tabla dBASE en un espacio de trabajo de archivo.

Table
ignore_nodata
(Opcional)

Especifica si los valores NoData de la entrada de valores se ignorarán en los resultados de la zona a la que pertenecen.

  • DATADentro de cualquier zona en concreto, para determinar el valor de salida de dicha zona solo se utilizarán las celdas que tienen un valor en el ráster de valores de entrada. Las celdas NoData del ráster de valores se ignorará en el cálculo estadístico. Esta es la opción predeterminada.
  • NODATASi existen celdas NoData en el ráster de valores dentro de cualquier zona, no se ignorarán y su existencia indica que no hay suficiente información para realizar cálculos estadísticos para todas las celdas de esa zona. Por consiguiente, toda la zona recibirá el valor NoData en el ráster de salida.
Boolean
statistics_type
(Opcional)

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

  • ALLSe calcularán todas las estadísticas para un ráster de valor de tipo entero. Para un ráster de valor de tipo punto flotante, se calcularán todas las estadísticas excepto Mediana y Percentil. Esta es la opción predeterminada.
  • MEANSe calcula el promedio de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida.
  • MAJORITYSe calcula el valor que aparece con más frecuencia de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida.
  • MAXIMUMSe calcula el valor más alto de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida.
  • MEDIANSe calcula la mediana de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida.
  • MINIMUMSe calcula el valor más bajo de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida.
  • MINORITYSe calcula el valor que aparece con menos frecuencia de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida.
  • PERCENTILESe calcula el percentil de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida. El 90.º percentil se calcula de forma predeterminada. Puede especificar otros valores (del 0 al 100) con el parámetro Valores de percentil.
  • RANGESe calcula la diferencia entre el valor más alto y el valor más bajo de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida.
  • STDSe calcula la desviación estándar de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida.
  • SUMSe calcula el valor total de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida.
  • VARIETYSe calcula el número de valores únicos de todas las celdas del ráster de valor que pertenecen a la misma zona que la celda de salida.
  • MIN_MAXSe calculan tanto la estadística de mínimo como la de máximo.
  • MEAN_STDSe calculan las estadísticas de valor medio y de desviación estándar.
  • MIN_MAX_MEANSe calculan las estadísticas de mínimo, máximo y valor medio.
String
process_as_multidimensional
(Opcional)

Especifica cómo se procesarán los rásteres de entrada cuando sean multidimensionales.

  • CURRENT_SLICESe calcularán estadísticas de la parte actual del dataset multidimensional de entrada. Esta es la opción predeterminada.
  • ALL_SLICESSe calcularán estadísticas de todas las dimensiones del dataset multidimensional de entrada.
Boolean
percentile_values
[percentile_values,...]
(Opcional)

El percentil que se va a calcular. El valor predeterminado es 90 e indica el percentil 90º.

Los valores pueden variar de 0 a 100. El percentil 0º equivale en esencia a la estadística mínima, mientras que el percentil 100º equivale a la estadística máxima. El valor de 50 generará en esencia el mismo resultado que la estadística mediana.

Esta opción solo se admite si el parámetro statistics_type está establecido en PERCENTILE o ALL.

Double
percentile_interpolation_type
(Opcional)

Especifica el método de interpolación percentil que se va a utilizar cuando el número de valores del ráster de entrada calculado sea par.

  • AUTO_DETECTSi el ráster de valor de entrada es de tipo píxel entero, se utiliza el método NEAREST. Si el ráster de valor de entrada es de tipo píxel de punto flotante, se utiliza el método LINEAR. Esta es la opción predeterminada.
  • NEARESTSe utiliza el valor disponible más cercano para el percentil deseado.
  • LINEARSe utiliza la media ponderada de los dos valores circundantes del percentil deseado.
String

Muestra de código

Ejemplo 1 de ZonalStatisticsAsTable (ventana de Python)

En este ejemplo se resumen los valores de un ráster dentro de las zonas definidas por un shapefile de polígono y se registran los resultados en una tabla.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZSaT = ZonalStatisticsAsTable("zones.shp", "Classes", "valueforzone",
                                  "zonalstattblout", "NODATA", "SUM")
Ejemplo 2 de ZonalStatisticsAsTable (secuencia de comandos independiente)

En este ejemplo se resumen los valores de un ráster dentro de las zonas definidas por un shapefile de polígono y se registran los resultados en una tabla.

# Name: ZonalStatisticsAsTable_Ex_standalone.py
# Description: Summarizes values of a multidimensional raster within the zones 
#              of another dataset and reports the results to a table.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy.sa import *

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Set the analysis environments
arcpy.env.workspace = "C:/sapyexamples/data"

# Set the local variables
inZoneData = "zones.shp"
zoneField = "sampleID"
inValueRaster = "multidimensional_valueraster.crf"
outTable = "zonalstattblout02.dbf"

# Execute ZonalStatisticsAsTable
outZSaT = ZonalStatisticsAsTable(inZoneData, zoneField, inValueRaster, 
                                 outTable, "NODATA", "MAXIMUM", "ALL_SLICES")

Información de licenciamiento

  • Basic: Requiere Spatial Analyst o Image Analyst
  • Standard: Requiere Spatial Analyst o Image Analyst
  • Advanced: Requiere Spatial Analyst o Image Analyst

Temas relacionados