Statistiques zonales (table) (Image Analyst)

Disponible avec une licence Spatial Analyst.

Disponible avec une licence Image Analyst.

Résumé

Récapitule les valeurs d’un raster dans chaque zone d’un autre jeu de données et affiche les résultats sous forme de table.

En savoir plus sur le fonctionnement des outils de statistiques zonales

Illustration

Illustration de l'outil Statistiques zonales (table)
ZonalStatisticsAsTable(ZoneRas, "Value", ValRas, OutTable, "DATA", "MIN_MAX_MEAN")

Utilisation

  • Une zone est définie comme l’ensemble des surfaces en entrée ayant la même valeur. Les surfaces ne sont pas nécessairement contiguës. Vous pouvez utiliser à la fois des entités et un raster pour la zone en entrée.

  • Si les données raster ou vecteur de zones en entrée (Input raster or feature zone data) (in_zone_data dans Python) constituent un raster, ils doivent être un raster d’entiers.

  • Si les données raster ou vecteur de zones en entrée (in_zone_data dans Python) forment une entité, ces données sont converties en raster en interne à l’aide de la taille de cellule et de l’alignement des cellules du raster de valeurs en entrée (in_value_raster dans Python).

  • Si la taille de cellule des données raster ou vecteur de zones en entrée (in_zone_data dans Python) et que le raster de valeurs en entrée (in_value_raster dans Python) est différent, la taille de cellule en sortie correspond à la valeur de Maximum Of Inputs (Nombre maximal d’entrées) et le raster de valeurs en entrée est utilisé comme raster de capture en interne. Si la taille de cellule est identique mais que les cellules ne sont pas alignées, le raster de valeurs en entrée est utilisé comme raster de capture en interne. L’une de ces cases déclenche un ré-échantillonnage interne avant l’exécution de l’opération zonale.

    Lorsque la zone ou les valeurs en entrée sont des rasters avec la même taille de cellule et que les cellules sont alignées, elles utilisent directement l’outil et ne sont pas ré-échantillonnées en interne au cours de l’exécution de l’outil.

  • Si les données Input raster or feature zone data (Données raster ou vecteur de zones en entrée) (in_zone_data dans Python) sont une entité, pour n’importe quelle entité de zone qui ne chevauche aucun centre de cellule du raster de valeur, ces zones ne sont pas converties en raster de zones interne. Ces zones ne seront par conséquent pas représentées en sortie. Vous pouvez le faire en déterminant une valeur appropriée pour l’environnement de taille de cellule permettant de préserver le niveau de détail souhaité des zones d’entités, et en spécifiant ceci dans l’environnement d’analyse.

  • Si les données raster ou vecteur de zones en entrée (Input raster or feature zone data) (in_zone_data dans Python) est une entité ponctuelle, il est possible d’avoir plusieurs points contenus dans toute cellule du raster de valeurs en entrée. Pour de telles cellules, la valeur de zone est déterminée par le point doté du champ ObjectID le plus faible (OID ou FID, par exemple).

  • Si le paramètre Input raster or feature zone data (Données raster ou vecteur de zones en entrée) (in_zone_data dans Python) contient des entités superposées, l’analyse zonale est effectuée pour chaque entité individuelle.

  • Lorsque vous spécifiez les données raster ou vecteur de zones en entrée (Input raster or feature zone data) (in_zone_data dans Python), le champ de zone par défaut est le premier champ entier ou texte disponible. S’il n’existe aucun autre champ valide, le champ ObjectID (par exemple, OID ou FID) est utilisé par défaut.

  • Le raster de valeurs en entrée (Input value raster) (in_value_raster dans Python) peut être de type entier ou à virgule flottante. Toutefois, lorsque son type est à virgule flottante, les options de calcul de la majorité, de la minorité et de la variété ne sont pas disponibles.

  • Pour les calculs de majorité et de minorité, lorsqu’il existe un rattachement, la sortie pour la zone est basée sur la plus faible des valeurs associées. Reportez-vous à la rubrique Fonctionnement de l’outil Statistiques zonales pour plus d’informations.

  • Un champ ou une série de champs est créé dans la table en sortie en fonction de la valeur du paramètre Statistics type (Type de statistique). Si la valeur en entrée est un entier, toutes les statistiques (Moyenne, Majorité, Maximum, Médiane, Minimum, Minorité, Pourcentage, Plage, Ecart type, Somme et Variété) peuvent être calculées. Si la valeur en entrée est à virgule flottante, les statistiques majorité, minorité et variété ne sont pas disponibles pour le calcul.

  • Les types de jeu de données raster multidimensionnelles pris en charge incluent la couche raster multidimensionnelle, la mosaïque, le service d’imagerie et le CRF d’Esri.

  • Le type de données de chaque valeur des éléments de la table en sortie dépend du calcul zonal effectué. Reportez-vous à la rubrique Fonctionnement de l’outil Statistiques zonales pour connaître le comportement spécifique d’une statistique.

  • Le nombre de lignes dans la table en sortie correspond au nombre de zones.

  • Par défaut, cet outil tire parti des processeurs à plusieurs cœurs. Le nombre maximal de cœurs pouvant être utilisés s’élève à quatre.

    Pour utiliser moins de cœurs, utilisez le paramètre d’environnement Facteur de traitement parallèle.

  • Pour plus d’informations sur les environnements de géotraitement qui s’appliquent à cet outil, reportez-vous à la rubrique Environnements d’analyse et Spatial Analyst.

Syntaxe

ZonalStatisticsAsTable(in_zone_data, zone_field, in_value_raster, out_table, {ignore_nodata}, {statistics_type}, {process_as_multidimensional}, {percentile_values}, {percentile_interpolation_type})
ParamètreExplicationType de données
in_zone_data

Jeu de données qui définit les zones.

Les zones peuvent être définies par un raster d'entiers ou une couche d'entités.

Raster Layer; Feature Layer
zone_field

Champ contenant les valeurs qui définissent chaque zone.

Il peut s'agir d'un champ de type entier ou chaîne du jeu de données de zones.

Field
in_value_raster

Raster contenant les valeurs sur lesquelles calculer une statistique.

Raster Layer
out_table

Table en sortie récapitulant les valeurs de chaque zone.

Le format de la table est déterminé par l'emplacement et le chemin d'accès en sortie. Par défaut, la sortie sera une table de géodatabase dans un espace de travail de géodatabase, et une table dBASE dans un espace de travail de fichier

Table
ignore_nodata
(Facultatif)

Indique si les valeurs NoData de la valeur en entrée sont ignorées dans les résultats de la zone dans laquelle elles se trouvent.

  • DATADans une zone donnée, seules les cellules qui ont une valeur dans le raster de valeurs en entrée sont utilisées pour déterminer la valeur en sortie de cette zone. Les cellules NoData dans le raster de valeurs sont ignorées dans le calcul statistique. Il s’agit de l’option par défaut.
  • NODATADans une zone donnée, s’il existe des cellules NoData dans le raster de valeurs, elles ne sont pas ignorées et leur existence indique que les informations sont suffisantes pour exécuter des calculs statistiques pour toutes les cellules de la zone. Par conséquent, toute la zone reçoit la valeur NoData dans le raster en sortie.
Boolean
statistics_type
(Facultatif)

Spécifie le type de statistique à calculer.

  • ALLToutes les statistiques sont calculées pour un raster de valeurs de type entier. Pour un raster de valeurs à virgule flottante, toutes les statistiques sont calculées, sauf Median (Médiane) et Percentile (Centile). Il s’agit de l’option par défaut.
  • MEANLa moyenne de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculée.
  • MAJORITYLa valeur qui revient le plus souvent parmi toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculée.
  • MAXIMUMLa valeur la plus élevée de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculée.
  • MEDIANLa valeur médiane de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculée.
  • MINIMUMLa valeur la plus faible de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculée.
  • MINORITYLa valeur qui revient le moins souvent parmi toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculée.
  • PERCENTILELe centile de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculé. Le 90è centile est calculé par défaut. Vous pouvez spécifier d’autres valeurs (entre 0 et 100) à l’aide du paramètre Percentile values (Valeurs de pourcentage).
  • RANGEL’écart entre la valeur la plus élevée et la plus faible parmi toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculé.
  • STDL’écart type de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculé.
  • SUMLa valeur totale de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculée.
  • VARIETYLe nombre de valeurs uniques pour toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculé.
  • MIN_MAXLes statistiques minimales et maximales sont calculées.
  • MEAN_STDLes statistiques de moyenne et d’écart type sont calculées.
  • MIN_MAX_MEANLes statistiques minimales, maximales et de moyenne sont calculées.
String
process_as_multidimensional
(Facultatif)

Indique le mode de traitement des rasters en entrée multidimensionnels.

  • CURRENT_SLICELes statistiques sont calculées à partir de la tranche actuelle du jeu de données multidimensionnelles. Il s’agit de l’option par défaut.
  • ALL_SLICESLes statistiques sont calculées pour toutes les dimensions du jeu de données multidimensionnelles en entrée.
Boolean
percentile_values
[percentile_values,...]
(Facultatif)

Pourcentage à calculer. La valeur par défaut est 90, soit le 90e centile.

Les valeurs peuvent varier entre 0 et 100. Le centile 0 est équivalent à la statistique minimale, tandis que le 100e centile équivaut au maximum. La valeur 50 produit essentiellement le même résultat que la statistique médiane.

Cette option est uniquement prise en charge si le paramètre statistics_type est défini sur PERCENTILE ou ALL.

Double
percentile_interpolation_type
(Facultatif)

Indique la méthode d’interpolation en centile à utiliser lorsque le nombre de valeurs du raster en entrée à calculer doit être pair.

  • AUTO_DETECTSi le type de pixel du raster de valeurs en entrée est de type entier, la méthode NEAREST est utilisée. Si le type de pixel du raster de valeurs en entrée est de type virgule flottante, la méthode LINEAR est utilisée. Il s’agit de l’option par défaut.
  • NEARESTLa valeur disponible la plus proche du centile souhaité est utilisée.
  • LINEARLa moyenne pondérée des deux valeurs environnantes du centile souhaité est utilisée.
String

Exemple de code

Premier exemple d'utilisation de l'outil ZonalStatisticsAsTable (fenêtre Python)

Cet exemple récapitule les valeurs d'un raster dans les zones définies par un fichier de formes surfaciques et enregistre les résultats dans une table.

import arcpy
from arcpy import env
from arcpy.ia import *
env.workspace = "C:/sapyexamples/data"
outZSaT = ZonalStatisticsAsTable("zones.shp", "Classes", "valueforzone",
                                  "zonalstattblout", "NODATA", "SUM")
Deuxième exemple d'utilisation de l'outil ZonalStatisticsAsTable (script autonome)

Cet exemple récapitule les valeurs d'un raster dans les zones définies par un fichier de formes surfaciques et enregistre les résultats dans une table.

# 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: Image Analyst Extension

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

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

# 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")

Informations de licence

  • Basic: Requiert Image Analyst or Spatial Analyst
  • Standard: Requiert Image Analyst or Spatial Analyst
  • Advanced: Requiert Image Analyst or Spatial Analyst

Rubriques connexes