Statistiques par bloc (Spatial Analyst)

Disponible avec une licence Spatial Analyst.

Résumé

Cet outil permet de partitionner une entrée en blocs non superposés et de calculer les statistiques relatives aux valeurs dans chaque bloc. La valeur est attribuée à toutes les cellules dans chaque bloc dans la sortie.

Pour en savoir plus sur le fonctionnement de l'outil Statistiques par bloc

Illustration

Illustration de l’outil Statistiques par bloc avec l’option Maximum
OutRas = BlockStatistics(InRas1, NbrRectangle(3,3,MAP), "MAXIMUM", "")

Utilisation

  • Si le raster en entrée est à virgule flottante, seules les statistiques Moyenne, Maximum, Minimum, Plage, Ecart type et Somme sont disponibles. Les statistiques Majorité, Minorité, Médiane et Variété ne sont pas autorisées. Si le raster en entrée est entier, tous les types de statistiques sont disponibles.

  • Si le raster en entrée est de type virgule flottante, la sortie le sera également pour tous les types de statistiques disponibles.

    Si le raster en entrée est de type entier, la sortie pour la plupart des types de statistiques sera de type entier. La sortie sera toujours de type virgule flottante pour les types de statistiques Moyenne et Ecart type.

  • Lorsque vous définissez un voisinage en anneau, circulaire ou en forme de secteur, et compte tenu de la taille de ce voisinage, les cellules qui ne sont pas perpendiculaires à l'axe x ou y ne sont pas prises en compte dans les calculs. Toutefois, les emplacements de ces cellules sont associés à la valeur obtenue suite aux calculs du voisinage, car elles sont comprises dans le rectangle d'emprise minimale (ou le bloc en sortie) de ces types de voisinages circulaires.

  • Les types de voisinage (Neighborhood) Irrégulier et Pondération nécessitent qu’un fichier de noyau (Kernel file) soit spécifié. Les fichiers de noyau doivent avoir une extension de fichier .txt.

    Pour plus d'informations sur la création et l'utilisation d'un fichier noyau, consultez les sections Irrégulier et Pondération dans la rubrique Fonctionnement des statistiques par bloc.

  • Dans le cas de la statistique Médiane, si le nombre de cellules dans le bloc est impair, les valeurs sont classées et la valeur centrale représente la médiane sous la forme d'un entier. Si le nombre de cellules dans le bloc est équivalent, les valeurs sont classées. Les deux valeurs centrales représentent une moyenne, soit l'entier le plus proche.

  • Dans le cas de la statistique Majorité, les cellules dans lesquelles il n'existe aucune valeur (deux valeurs ou plus dans un bloc sont associées, puisqu'elles ont le plus grand nombre de cellules dans la valeur) sont associées à la valeur NoData. Dans le cas de la statistique Minorité, les cellules dans lesquelles il n'existe pas de valeur minoritaire sont également associées à la valeur NoData.

  • Lorsque le type de statistiques est Moyenne, Minorité, Ecart type ou Somme, le type Voisinage peut être défini sur Poids.

  • 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

BlockStatistics(in_raster, {neighborhood}, {statistics_type}, {ignore_nodata})
ParamètreExplicationType de données
in_raster

Raster faisant l'objet de calculs avec l'outil Statistiques par bloc.

Raster Layer
neighborhood
(Facultatif)

La classe Neighborhood dicte la forme de la zone autour de chaque cellule utilisée pour le calcul des statistiques.

Les types de voisinage pris en charge sont NbrAnnulus, NbrCircle, NbrRectangle, NbrWedge, NbrIrregular, et NbrWeight.

Formes des voisinages :

  • NbrAnnulus({innerRadius}, {outerRadius}, {units})
  • NbrCircle({radius}, {units}
  • NbrRectangle({width}, {height}, {units})
  • NbrWedge({radius}, {startAngle}, {endAngle}, {units})
  • NbrIrregular(inKernelFile)
  • NbrWeight(inKernelFile)

Le voisinage par défaut est un voisinage NbrRectangle carré avec une largeur et une hauteur de trois cellules.

Neighborhood
statistics_type
(Facultatif)

Spécifie le type de statistique à calculer.

  • MEANCalcule la moyenne des cellules du voisinage.
  • MAJORITYCalcule la majorité (valeur la plus fréquente) des cellules du voisinage.
  • MAXIMUMCalcule le maximum (valeur la plus élevée) des cellules du voisinage.
  • MEDIANCalcule la médiane des cellules du voisinage.
  • MINIMUMCalcule le minimum (valeur la plus faible) des cellules du voisinage.
  • MINORITYCalcule la minorité (valeur la moins fréquente) des cellules du voisinage.
  • RANGECalcule la plage (différence entre la valeur la plus élevée et la valeur la plus faible) des cellules du voisinage.
  • STDCalcule l'écart type des cellules du voisinage.
  • SUMCalcule la somme (total de toutes les valeurs) des cellules du voisinage.
  • VARIETYCalcule la variété (le nombre de valeurs uniques) des cellules du voisinage.

Le type de statistiques par défaut est Mean (Moyenne).

String
ignore_nodata
(Facultatif)

Précise si les valeurs NoData sont ignorées par le calcul de statistiques.

  • DATASi une valeur NoData existe dans un bloc voisin, elle est ignorée. Seules les cellules du voisinage dotées de valeurs de données sont utilisées dans la détermination de la valeur en sortie. Il s’agit de l’option par défaut.
  • NODATASi une cellule d’un voisinage a une valeur NoData, la sortie de chaque cellule du bloc correspondant est NoData. Avec cette option, la présence d'une valeur NoData implique que les informations sont insuffisantes pour calculer les statistiques pour le voisinage.
Boolean

Valeur renvoyée

NomExplicationType de données
out_raster

Raster des statistiques du bloc en sortie.

Raster

Exemple de code

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

Cet exemple décrit le calcul de la valeur d'une cellule minimale dans chaque voisinage d'anneau non superposé dans le raster Grid en entrée.

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")
Deuxième exemple d'utilisation de l'outil BlockStatistics (script autonome)

Cet exemple décrit le calcul de la valeur d'une cellule minimale dans chaque voisinage d'anneau non superposé dans le raster Grid en entrée.

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

Informations de licence

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

Rubriques connexes