Statistiques zonales (Image Analyst)

Disponible avec une licence Spatial Analyst.

Disponible avec une licence Image Analyst.

Synthèse

Calcule les statistiques des valeurs d’un raster dans chaque zone d’un autre jeu de données.

En savoir plus sur le fonctionnement des outils de statistiques zonales

Illustration

Illustration de l'outil Statistiques zonales
OutRas = ZonalStatistics(ZoneRas, "VALUE", ValRas, "MINIMUM", "DATA", "CURRENT_SLICE")

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 Input raster or feature zone data (Données raster ou vecteur de zones en entrée) (in_zone_data en Python) constituent un raster, il doit s’agir d’un raster d’entiers.

  • Si les données Input raster or feature zone data (Données raster ou vecteur de zones en entrée) (in_zone_data en 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 de l’option Input value raster (Raster de valeurs en entrée) (in_value_raster en Python).

  • Si la taille de cellule est différente de Input raster or feature zone data (Données raster ou vecteur de zones en entrée) (in_zone_data en Python) et que Input value raster (Raster de valeurs en entrée) (in_value_raster en Python) est différent, la taille de cellule en sortie correspond à la valeur Maximum Of Inputs (Nombre maximum d’entrées) et l’option Input value raster (Raster de valeurs en entrée) sera utilisée comme raster de capture en interne. Si la taille de cellule est identique, mais que les cellules ne sont pas alignées, l’option Input value raster (Raster de valeurs en entrée) sert de 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 en 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 cela dans l’environnement d’analyse.

  • Si les données Input raster or feature zone data (Données raster ou vecteur de zones en entrée) (in_zone_data en Python) sont une entité ponctuelle, il est possible d’avoir plusieurs points contenus dans une cellule spécifique 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 les données nput raster or feature zone data (Données raster ou vecteur de zones en entrée) (in_zone_data en Python) contiennent des polygones superposés, l’analyse zonale n’est pas effectuée pour chaque polygone individuel. Comme l’entité en entrée est convertie en raster, chaque emplacement ne peut avoir qu’une seule valeur.

    Une méthode alternative consiste à traiter l’opération zonale de façon itérative pour chacune des zones de polygone et à assembler les résultats.

  • Lorsque vous spécifiez les données Input raster or feature zone data (Données raster ou vecteur de zones en entrée)) (in_zone_data en 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.

  • La valeur du champ Input value raster (Raster de valeurs en entrée) (in_value_raster en Python) peut être de type entier ou à virgule flottante. Toutefois, si 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 des outils de statistiques zonales pour plus d’informations.

  • 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 (entier ou à virgule flottante) de la sortie dépend du calcul zonal qui est effectué et du type raster de valeurs en entrée.

  • 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.

Paramètres

ÉtiquetteExplicationType de données
Données raster ou vecteur de zones en entrée

Jeu de données définissant les zones.

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

Raster Layer; Feature Layer
Champ de zone

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
Raster de valeurs en entrée

Raster contenant les valeurs sur lesquelles une statistique doit être calculée.

Raster Layer
Type de statistique
(Facultatif)

Spécifie le type de statistique à calculer.

  • MoyenneLa moyenne de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculée.
  • MajoritéLa 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.
  • MédianLa valeur médiane de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculée.
  • MinimalLa 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.
  • MinoritéLa 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.
  • CentileLe 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 value (Valeur de pourcentage).
  • PlageL’é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é.
  • Écart typeL’écart type de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculé.
  • SommeLa valeur totale de toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculée.
  • VariétéLe nombre de valeurs uniques pour toutes les cellules du raster de valeurs appartenant à la même zone que la cellule en sortie, est calculé.
String
Ignorer NoData dans les calculs
(Facultatif)

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

  • Activé : dans une zone particulière, seules les cellules qui ont une valeur dans le raster de valeurs en entrée seront utilisées pour déterminer la valeur en sortie de cette zone. Les cellules NoData dans le raster de valeurs seront ignorées dans le calcul statistique. Il s’agit de l’option par défaut.
  • Désactivé : dans une zone particulière, s’il existe des cellules NoData dans le raster de valeurs, elles ne seront pas ignorées et leur existence indique que les informations sont insuffisantes pour exécuter des calculs statistiques pour l’ensemble des cellules de cette zone. Par conséquent, toute la zone reçoit la valeur NoData dans le raster en sortie.
Boolean
Traiter comme multidimensionnel
(Facultatif)

Spécifie le mode de traitement des rasters en entrée s’il s’agit de rasters multidimensionnels.

  • Désactivé : les statistiques sont calculées à partir de la tranche actuelle du jeu de données multidimensionnelles. Il s’agit de l’option par défaut.
  • Activé : les statistiques sont calculées pour toutes les dimensions du jeu de données multidimensionnelles en entrée.
Boolean
Valeur du pourcentage
(Facultatif)

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

Les valeurs peuvent varier entre 0 et 100. Le centile n° 0 est équivalent à la statistique minimale tandis que le 100e centile équivaut au maximum Une valeur de 50 donne le même résultat que la statistique médiane.

Cette option n’est disponible que si le paramètre Statistics type (Type de statistique) est défini sur Percentile (Centile).

Double
Percentile Interpolation Type (Type d’interpolation en centile)
(Facultatif)

Définit la méthode d’interpolation à utiliser lorsque la valeur du centile se situe entre deux valeurs de cellule du raster de valeurs en entrée.

  • Auto-detect (Détection automatique)Si le type de pixel du raster de valeurs en entrée est de type entier, la méthode Nearest (La plus proche) est utilisée. Si le type de pixel du raster de valeurs en entrée est de type virgule flottante, la méthode Linear (Linéaire) est utilisée. Il s’agit de l’option par défaut.
  • Les plus prochesLa valeur disponible la plus proche du centile souhaité est utilisée. Dans ce cas, le type de pixel en sortie est identique à celui du raster de valeurs en entrée.
  • LinéaireLa moyenne pondérée des deux valeurs environnantes du centile souhaité est utilisée. Dans ce cas, le type de pixel en sortie est à virgule flottante.
String

Valeur renvoyée

ÉtiquetteExplicationType de données
Raster en sortie

Raster de statistiques zonales en sortie.

Raster

ZonalStatistics(in_zone_data, zone_field, in_value_raster, {statistics_type}, {ignore_nodata}, {process_as_multidimensional}, {percentile_value}, {percentile_interpolation_type})
NomExplicationType de données
in_zone_data

Jeu de données définissant 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 une statistique doit être calculée.

Raster Layer
statistics_type
(Facultatif)

Spécifie le type de statistique à calculer.

  • 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 value (Valeur 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é.
String
ignore_nodata
(Facultatif)

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

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

Spécifie le mode de traitement des rasters en entrée s’il s’agit de rasters 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_value
(Facultatif)

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

Les valeurs peuvent varier entre 0 et 100. Le centile n° 0 est équivalent à la statistique minimale tandis que le 100e centile équivaut au maximum Une valeur de 50 donne le même résultat que la statistique médiane.

Cette option n’est prise en charge que si le paramètre statistics_type est défini sur PERCENTILE.

Double
percentile_interpolation_type
(Facultatif)

Définit la méthode d’interpolation à utiliser lorsque la valeur du centile se situe entre deux valeurs de cellule du raster de valeurs en entrée.

  • 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 raster de valeurs en entrée est de type pixel à 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. Dans ce cas, le type de pixel en sortie est identique à celui du raster de valeurs en entrée.
  • LINEARLa moyenne pondérée des deux valeurs environnantes du centile souhaité est utilisée. Dans ce cas, le type de pixel en sortie est à virgule flottante.
String

Valeur renvoyée

NomExplicationType de données
out_raster

Raster de statistiques zonales en sortie.

Raster

Exemple de code

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

Cet exemple détermine pour chaque zone la plage de valeurs de cellule dans le raster de valeurs en entrée.

import arcpy
from arcpy import env
from arcpy.ia import *
env.workspace = "C://data"
outZonalStats = ZonalStatistics("zone", "value", "valueraster", "RANGE",
                                "NODATA")
outZonalStats.save("C:/output/zonestatout")
Deuxième exemple d'utilisation de l'outil ZonalStatistics (script autonome)

Cet exemple crée une sortie zonale multidimensionnelle en calculant la valeur maximale du raster de valeurs multidimensionnelle en entrée pour chaque zone.

# Name: ZonalStatistics_Ex_standalone.py
# Description: Summarizes values of a multidimensional raster within the zones 
#              of another dataset.
# 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"

# Execute ZonalStatistics
outZonalStatistics = ZonalStatistics(inZoneData, zoneField, inValueRaster,
                                     "MAXIMUM", "NODATA", "ALL_SLICES")

# Save the output 
outZonalStatistics.save("C:/sapyexamples/output/zonestatout2.crf")

Informations de licence

  • Basic: Nécessite Image Analyst or Spatial Analyst
  • Standard: Nécessite Image Analyst or Spatial Analyst
  • Advanced: Nécessite Image Analyst or Spatial Analyst

Rubriques connexes