Statistiques zonales (table) (Analyse raster)

Résumé

Calcule les valeurs d’un raster dans chaque zone d’un autre jeu de données et affiche les résultats dans une table.

Illustration

Illustration de l’outil Statistiques zonales (table)

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.

  • Cet outil du portail d’analyse raster est disponible lorsque vous êtes connecté à un portail ArcGIS Enterprise Lien vers Présentation de l’analyse dans ArcGIS Enterprise comportant un ArcGIS Image Server Lien vers Présentation de ArcGIS Image Server configuré pour Raster Analysis Lien vers Configurer et déployer l’analyse raster. Lorsque cet outil est appelé, ArcGIS Pro est utilisé comme client et le traitement est effectué dans les serveurs fédérés avec ArcGIS Enterprise. Cet outil du portail prend en charge les couches de votre portail en entrée et crée la sortie dans le portail.

    La couche raster en entrée prend en charge les éléments suivants : couche du portail, URI ou URL d’un service d’imagerie ou sortie de l’outil Make Image Server Layer (Créer une couche de serveur d’imagerie). La couche d’entités en entrée peut être une couche du portail, ou une URI ou une URL d’un service d’entités. Cet outil ne prend pas en charge les données raster ou les couches locales. Bien que vous ayez la possibilité d’utiliser des données d’entité et des couches locales en entrée dans cet outil du portail, il est recommandé d’utiliser les couches de votre portail en entrée.

  • Si la valeur de Input Zone Raster or Features (Entités ou raster de zones en entrée) (inputZoneRasterOrFeatures dans Python) est un raster, il doit s’agir d’un raster de type entier.

    Si la zone est une entité, elle est convertie en raster en interne en utilisant la taille de cellule et l’alignement de cellule du raster de valeurs en entrée (inputValueRaster dans Python).

  • Si la taille de cellule des entités ou du raster de zones en entrée et du raster de valeurs en entrée sont différentes, la taille de cellule en sortie est la valeur du nombre maximal d’entrées et le raster de valeurs du service d’imagerie 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 valeur sert en interne de raster de capture. 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 la valeur de Input Zone Raster or Features (Entités ou raster de zones en entrée) est 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. L’indication d’une taille de cellule inférieure génère un raster en sortie plus grand. Une sortie avec une résolution élevée ne présente pas nécessairement une qualité supérieure, car les détails supplémentaires n’existent pas réellement dans le raster de valeurs en entrée.

  • Si les entités ou le raster de zones en entrée contiennent des entité superposées, l’analyse zonale n’est pas effectuée pour chaque entité individuelle.

  • Si la valeur de Input Zone Raster or Features (Entités ou raster de zones en entrée) est une entité ponctuelle, il est possible qu’une cellule du raster de valeurs en entrée contienne plusieurs points. 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).

  • Lorsque vous spécifiez les entités ou le raster de zones en entrée, le champ de zone par défaut est le premier champ d’entier ou de 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 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 une association, la sortie pour la zone est basée sur la plus faible des valeurs associées.

  • Un champ ou une série de champs est créé dans la table en sortie selon la définition du paramètre Statistic Type (Type de statistique) (statisticType dans Python). Le nombre de lignes dans la table en sortie représente le nombre de zones.

Syntaxe

arcpy.ra.ZonalStatisticsAsTable(inputZoneRasterOrFeatures, inputValueRaster, outputTableName, zoneField, {ignoreNodata}, {statisticType}, {percentileValues}, {processAsMultidimensional}, {percentileInterpolationType})
ParamètreExplicationType de données
inputZoneRasterOrFeatures

Entrée qui définit les zone.

Vous pouvez utiliser à la fois des données d’entités et raster pour la zone en entrée.

Raster Layer; Feature Layer
inputValueRaster

Raster contenant les valeurs sur lesquelles vous synthétisez une statistique.

Raster Layer
outputTableName

Le nom de la table en sortie.

Si la table existe déjà, vous êtes invité à fournir un autre nom.

String
zoneField

Champ qui définit chaque zone.

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

String
ignoreNodata
(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
statisticType
(Facultatif)

Spécifie le type de statistique à calculer.

Les options disponibles lorsque le raster de valeurs est de type entier sont All (Tout), Mean (Moyenne), Majority (Majorité), Maximum, Median (Médiane), Minimum, Minority (Minorité), Percentile (Centile), Range (Plage), Standard deviation (Écart type), Sum (Somme), Variety (Variété), Minimum and Maximum (Minimum et maximum), Mean and Standard deviation (Moyenne et écart type) et Minimum, Maximum and Mean (Minimum, maximum et moyenne).

Si le raster de valeurs est de type virgule flottante, les options sont All (Tout), Mean (Moyenne), Maximum, Median (Médiane), Percentile (Centile), Minimum, Range (Plage), Standard deviation (Écart type) et Sum (Somme).

  • ALLToutes les statistiques sont calculées pour un raster de valeurs de type entier. Toutes les statistiques sauf Median (Médiane) et Percentile (Centile) sont calculées pour un raster de valeurs de type virgule flottante. Il s’agit de l’option par défaut.
  • MEANLa moyenne de toutes les cellules de la couche raster à synthétiser appartenant à la même zone que la cellule en sortie, est calculée.
  • MAJORITYLa valeur qui revient le plus souvent parmi toutes les cellules de la couche raster à synthétiser appartenant à la même zone que la cellule en sortie, est calculée.
  • MAXIMUMLa valeur la plus élevée de toutes les cellules de la couche raster à synthétiser appartenant à la même zone que la cellule en sortie, est calculée.
  • MEDIANLa valeur médiane de toutes les cellules de la couche raster à synthétiser appartenant à la même zone que la cellule en sortie, est calculée.
  • MINIMUMLa valeur la plus faible de toutes les cellules de la couche raster à synthétiser, appartenant à la même zone que la cellule en sortie, est calculée.
  • MINORITYLa valeur qui revient le moins souvent parmi toutes les cellules de la couche raster à synthétiser 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 centile).
  • RANGEL’écart entre la plus petite valeur et la plus grande valeur parmi toutes les cellules de la couche raster à synthétiser appartenant à la même zone que la cellule en sortie, est calculé.
  • STDL’écart type de toutes les cellules de la couche raster à synthétiser, appartenant à la même zone que la cellule en sortie, est calculé.
  • SUMLa valeur totale de toutes les cellules de la couche raster à synthétiser, appartenant à la même zone que la cellule en sortie, est calculée.
  • VARIETYLe nombre de valeurs uniques pour toutes les cellules de la couche raster à synthétiser 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
percentileValues
[percentileValues,...]
(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 disponible si le paramètre statisticType est défini sur PERCENTILE ou ALL.

Double
processAsMultidimensional
(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
percentileInterpolationType
(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

Sortie dérivée

NomExplicationType de données
outputTable

Table en sortie.

Service d’entités sans géométrie

Exemple de code

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

Cet exemple détermine, pour chaque zone, la moyenne des valeurs de cellule de la couche raster à synthétiser.

import arcpy
arcpy.ra.ZonalStatisticsAsTable('https://MyPortal.esri.com/server/rest/services/Hosted/landuse/ImageServer',
                           	'https://MyPortal.esri.com/server/rest/services/Hosted/elevation/ImageServer',
    				'outTable', 'Landuse', '', 'MEAN')
Deuxième exemple d'utilisation de l'outil ZonalStatisticsAsTable (script autonome)

Cet exemple détermine, pour chaque zone, les valeurs statistiques de la couche raster à synthétiser.

#-------------------------------------------------------------------------------
# Name: ZonalStatisticsAsTable_Ex_02.py
# Description: Calculates all statistics with defined percentile values  
#              for sea-surface temperature defined by ecological zones.
# Requirements: ArcGIS Image Server

# Import system modules
import arcpy

# Set local variables
inputZoneRasterOrFeatures = 'https://MyPortal.esri.com/server/rest/services/Hosted/zones/ImageServer'
inputValueRaster = 'https://MyPortal.esri.com/server/rest/services/Hosted/seaSurfaceTemperature/ImageServer'
outputTableName = 'outZSAT'
zoneField = 'temperature'
ignoreNodata = '' 
statisticType = 'PERCENTILE'
percentileValues = [25,75,90]
processAsMultidimensional = 'ALL_SLICES'
percentileInterpolationType = 'NEAREST'

# Execute Multidimensional Zonal Statistics as Table
arcpy.ra.ZonalStatisticsAsTable(inputZoneRasterOrFeatures, inputValueRaster, outputTableName, zoneField,
                                ignoreNodata, statisticType, percentileValues, processAsMultidimensional, 
                                percentileInterpolationType)

Informations de licence

  • Basic: Requiert ArcGIS Image Server
  • Standard: Requiert ArcGIS Image Server
  • Advanced: Requiert ArcGIS Image Server

Rubriques connexes