Zonale Statistiken (Spatial Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Berechnet Statistiken der Werte eines Gitternetzs innerhalb der Zonen eines anderen Datasets.

Weitere Informationen zur Funktionsweise der Werkzeuge für Zonenstatistiken

Abbildung

Abbildung "Zonale Statistiken"
OutRas = ZonalStatistics(ZoneRas, "VALUE", ValRas, "MINIMUM", "DATA", "CURRENT_SLICE")

Verwendung

  • Eine Zone wird durch alle Flächen in der Eingabe definiert, die den gleichen Wert aufweisen. Die Flächen müssen nicht zusammenhängend sein. Sowohl Raster als auch Features können als Zoneneingabe verwendet werden.

  • Wenn es sich bei den Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) um ein Raster handelt, muss dies ein Integer-Raster sein.

  • Wenn die Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) ein Feature sind, werden sie intern in ein Raster konvertiert, wobei die Zellengröße und die Zellenausrichtung aus dem Eingabe-Werte-Raster (in_value_raster in Python) verwendet werden.

  • Bei Abweichungen der Zellengröße zwischen den Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) und dem Eingabe-Werte-Raster (in_value_raster in Python) entspricht die Ausgabezellengröße dem Maximum der Eingabedaten. In diesem Fall wird das Eingabe-Werte-Raster intern als Fang-Raster verwendet. Wenn die Zellengröße übereinstimmt, die Zellen jedoch nicht ausgerichtet sind, wird das Eingabe-Wert-Raster intern als Fang-Raster verwendet. In beiden Fällen wird ein internes Resampling ausgelöst, bevor die zonale Operation ausgeführt wird.

    Wenn die Zonen- und Werteingaben jeweils Raster mit derselben Zellengröße sind und die Zellen ausgerichtet sind, werden sie direkt in dem Werkzeug verwendet. Während der Werkzeugausführung wird dann kein internes Resampling durchgeführt.

  • Wenn es sich bei den Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) um ein Feature handelt, werden Zonen, bei denen die Zonen-Features keinen der Zellenmittelpunkte des Werte-Rasters überlappen, nicht in das interne Zonen-Raster konvertiert. Diese Zonen sind daher nicht in der Ausgabe dargestellt. Dies können Sie verwalten, indem Sie einen angemessenen Wert für die Umgebung "Zellengröße" festlegen, wodurch die gewünschte Detaillierungsebene der Feature-Zonen beibehalten werden kann. Geben Sie dies in der Analyseumgebung an.

  • Wenn die Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) ein Punkt-Feature sind, ist es möglich, dass eine bestimmte Zelle des Eingabe-Werte-Rasters mehr als einen Punkt enthält. Für derartige Zellen wird der Zonenwert durch den Punkt mit dem niedrigsten ObjectID-Feld (z. B. OID oder FID) bestimmt.

  • Wenn die Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) überlappende Polygone aufweisen, wird die zonale Analyse nicht für jedes einzelne Polygon ausgeführt. Da die Feature-Eingabe in ein Raster konvertiert wird, kann jede Position über nur einen Wert verfügen.

    Eine alternative Methode besteht darin, die zonale Operation für jede der Polygonzonen iterativ zu verarbeiten und die Ergebnisse zu sortieren.

  • Bei Angabe der Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) entspricht das Standard-Zonenfeld dem ersten verfügbaren Ganzzahl- oder Textfeld. Sind keine anderen gültigen Felder vorhanden, wird das ObjectID-Feld als Standardfeld verwendet (z. B. OID oder FID).

  • Das Eingabe-Werte-Raster (in_value_raster in Python) kann entweder ein Integer- oder ein Gleitkomma-Raster sein. Bei Gleitkomma-Rastern sind jedoch die Optionen für die Berechnung von Mehrheit, Minderheit und Varianz nicht verfügbar.

  • Wenn es bei Mehrheits- und Minderheitsberechnungen zu einem Gleichstand kommt, basiert die Ausgabe für die Zone auf dem niedrigsten der verbundenen Werte. Weitere Informationen finden Sie unter Funktionsweise der Werkzeuge für Zonenstatistiken.

  • Zu den unterstützten Typen von multidimensionalen Raster-Datasets zählen multidimensionale Raster-Layer, Mosaik, Image-Service und Esri CRF.

  • Der Datentyp (Integer oder Gleitkommazahl) der Ausgabe ist abhängig von der durchgeführten zonalen Berechnung und dem Raster-Typ für die Eingabewerte.

  • Dieses Werkzeug nutzt standardmäßig Mehrkernprozessoren. Maximal können vier Kerne genutzt werden.

    Wenn weniger Kerne genutzt werden sollen, verwenden Sie die Umgebungseinstellung Faktor für parallele Verarbeitung.

  • Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Raster- oder -Feature-Zonen-Daten

Das Dataset, das die Zonen definiert.

Die Zonen können durch ein Integer-Raster oder einen Feature-Layer festgelegt werden.

Raster Layer; Feature Layer
Zonenfeld

Das Feld, das die Werte enthält, die die einzelnen Zonen definieren.

Es kann sich dabei um ein Ganzzahl- oder ein Zeichenfolgefeld des Zonen-Datasets handeln.

Field
Eingabe-Werte-Raster

Das Raster, das die Werte für die Berechnung der Statistik enthält.

Raster Layer
Statistiktyp
(optional)

Gibt den zu berechnenden Statistiktyp an.

  • DurchschnittDer Durchschnitt aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • MehrheitDer am häufigsten vorkommende Wert aus allen Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • MaximumDer größte Wert aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • MedianwertDer Medianwert aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • MinimumDer kleinste Wert aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • MinderheitDer am seltensten vorkommende Wert aus allen Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • PerzentilDas Perzentil aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet. Standardmäßig wird das 90. Perzentil berechnet. Sie können andere Werte (von 0 bis 100) mit dem Parameter Perzentilwert angeben.
  • BereichDie Differenz zwischen dem größten und kleinsten Wert aus allen Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • StandardabweichungDie Standardabweichung aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • SummeDer Gesamtwert aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • VarianzDie Anzahl der eindeutigen Werte für alle Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
String
NoData-Werte in Berechnungen ignorieren
(optional)

Gibt an, ob NoData-Werte in der Werteingabe in den Ergebnissen der Zone, in der sie liegen, ignoriert werden.

  • Aktiviert: Innerhalb einer bestimmten Zone werden nur Zellen, die über einen Wert im Eingabe-Werte-Raster verfügen, verwendet, um den Ausgabewert für diese Zone zu bestimmen. NoData-Zellen im Werte-Raster werden bei der Statistikberechnung ignoriert. Dies ist die Standardeinstellung.
  • Deaktiviert: Wenn es in einer bestimmten Zone NoData-Zellen im Wert-Raster gibt, werden diese nicht ignoriert. Ihr Vorhandensein weist darauf hin, dass es nicht genügend Informationen zum Durchführen statistischer Berechnungen für alle Zellen in der Zone gibt. Entsprechend erhält die gesamte Zone den NoData-Wert für das Ausgabe-Raster.
Boolean
Als multidimensional verarbeiten
(optional)

Gibt an, wie die Eingabe-Werte-Raster verarbeitet werden, wenn sie multidimensional sind.

  • Deaktiviert: Statistiken werden anhand des aktuellen Segments eines mehrdimensionalen Eingabe-Datasets berechnet. Dies ist die Standardeinstellung.
  • Aktiviert: Statistiken werden für alle Dimensionen des multidimensionalen Eingabe-Datasets berechnet.
Boolean
Perzentilwert
(optional)

Das zu berechnende Perzentil. Der Standardwert ist 90 und steht für das 90. Perzentil.

Zulässige Werte können zwischen 0 und 100 liegen. Grundsätzlich entspricht der Perzentilwert 0 statistisch gesehen dem Minimum und der Perzentilwert 100 dem Maximum. Der Wert 50 ergibt im Wesentlichen dasselbe Ergebnis wie der Medianwert der Statistik.

Diese Option ist nur verfügbar, wenn für den Parameter Statistiktyp die Option Perzentil festgelegt wurde.

Double
Perzentil-Interpolationstyp
(optional)

Gibt die Interpolationsmethode an, die verwendet wird, wenn der Perzentilwert zwischen zwei Zellenwerte aus dem Eingabe-Werte-Raster fällt.

  • Automatisch erkennenWeist das Eingabe-Werte-Raster einen ganzzahligen Pixeltyp auf, wird die Methode Nächster Nachbar verwendet. Weist das Eingabe-Werte-Raster einen Gleitkomma-Pixeltyp auf, wird die Methode Linear verwendet. Dies ist die Standardeinstellung.
  • Nächster NachbarEs wird der dem gewünschten Perzentil am nächsten liegende verfügbare Wert verwendet. In diesem Fall entspricht der Ausgabepixeltyp dem des Eingabe-Werte-Rasters.
  • LinearEs wird der gewichtete Durchschnitt der beiden umgebenden Werte aus dem gewünschten Perzentil verwendet. In diesem Fall ist der Ausgabepixeltyp "Gleitkomma".
String

Rückgabewert

BeschriftungErläuterungDatentyp
Ausgabe-Raster

Das Ausgabe-Raster für "Zonale Statistiken".

Raster

ZonalStatistics(in_zone_data, zone_field, in_value_raster, {statistics_type}, {ignore_nodata}, {process_as_multidimensional}, {percentile_value}, {percentile_interpolation_type})
NameErläuterungDatentyp
in_zone_data

Das Dataset, das die Zonen definiert.

Die Zonen können durch ein Integer-Raster oder einen Feature-Layer festgelegt werden.

Raster Layer; Feature Layer
zone_field

Das Feld, das die Werte enthält, die die einzelnen Zonen definieren.

Es kann sich dabei um ein Ganzzahl- oder ein Zeichenfolgefeld des Zonen-Datasets handeln.

Field
in_value_raster

Das Raster, das die Werte für die Berechnung der Statistik enthält.

Raster Layer
statistics_type
(optional)

Gibt den zu berechnenden Statistiktyp an.

  • MEANDer Durchschnitt aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • MAJORITYDer am häufigsten vorkommende Wert aus allen Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • MAXIMUMDer größte Wert aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • MEDIANDer Medianwert aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • MINIMUMDer kleinste Wert aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • MINORITYDer am seltensten vorkommende Wert aus allen Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • PERCENTILEDas Perzentil aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet. Standardmäßig wird das 90. Perzentil berechnet. Sie können andere Werte (von 0 bis 100) mit dem Parameter Perzentilwert angeben.
  • RANGEDie Differenz zwischen dem größten und kleinsten Wert aus allen Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • STDDie Standardabweichung aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • SUMDer Gesamtwert aller Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
  • VARIETYDie Anzahl der eindeutigen Werte für alle Zellen im Wert-Raster, die zur selben Zone gehören wie die Ausgabezelle, wird berechnet.
String
ignore_nodata
(optional)

Gibt an, ob NoData-Werte in der Werteingabe in den Ergebnissen der Zone, in der sie liegen, ignoriert werden.

  • DATAInnerhalb einer bestimmten Zone werden nur Zellen, die über einen Wert im Eingabe-Werte-Raster verfügen, verwendet, um den Ausgabewert für diese Zone zu bestimmen. NoData-Zellen im Werte-Raster werden bei der Statistikberechnung ignoriert. Dies ist die Standardeinstellung.
  • NODATAWenn es in einer bestimmten Zone NoData-Zellen im Wert-Raster gibt, werden diese nicht ignoriert. Ihr Vorhandensein weist darauf hin, dass es nicht genügend Informationen zum Durchführen statistischer Berechnungen für alle Zellen in der Zone gibt. Entsprechend erhält die gesamte Zone den NoData-Wert für das Ausgabe-Raster.
Boolean
process_as_multidimensional
(optional)

Gibt an, wie die Eingabe-Werte-Raster verarbeitet werden, wenn sie multidimensional sind.

  • CURRENT_SLICEStatistiken werden anhand des aktuellen Segments eines mehrdimensionalen Eingabe-Datasets berechnet. Dies ist die Standardeinstellung.
  • ALL_SLICESStatistiken werden für alle Dimensionen des multidimensionalen Eingabe-Datasets berechnet.
Boolean
percentile_value
(optional)

Das zu berechnende Perzentil. Der Standardwert ist 90 und steht für das 90. Perzentil.

Zulässige Werte können zwischen 0 und 100 liegen. Grundsätzlich entspricht der Perzentilwert 0 statistisch gesehen dem Minimum und der Perzentilwert 100 dem Maximum. Der Wert 50 ergibt im Wesentlichen dasselbe Ergebnis wie der Medianwert der Statistik.

Diese Option wird nur unterstützt, wenn für den Parameter statistics_type die Option PERCENTILE festgelegt wurde.

Double
percentile_interpolation_type
(optional)

Gibt die Interpolationsmethode an, die verwendet wird, wenn der Perzentilwert zwischen zwei Zellenwerte aus dem Eingabe-Werte-Raster fällt.

  • AUTO_DETECTWeist das Eingabe-Werte-Raster einen Integer-Pixeltyp auf, wird die Methode NEAREST verwendet. Weist das Eingabe-Werte-Raster einen Gleitkomma-Pixeltyp auf, wird die Methode LINEAR verwendet. Dies ist die Standardeinstellung.
  • NEARESTEs wird der dem gewünschten Perzentil am nächsten liegende verfügbare Wert verwendet. In diesem Fall entspricht der Ausgabepixeltyp dem des Eingabe-Werte-Rasters.
  • LINEAREs wird der gewichtete Durchschnitt der beiden umgebenden Werte aus dem gewünschten Perzentil verwendet. In diesem Fall ist der Ausgabepixeltyp "Gleitkomma".
String

Rückgabewert

NameErläuterungDatentyp
out_raster

Das Ausgabe-Raster für "Zonale Statistiken".

Raster

Codebeispiel

ZonalStatistics – Beispiel 1 (Python-Fenster)

In diesem Beispiel wird für jede Zone der Bereich der Zellenwerte im Wert-Eingabe-Raster ermittelt.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonalStats = ZonalStatistics("zone", "value", "valueraster", "RANGE",
                                "NODATA")
outZonalStats.save("C:/sapyexamples/output/zonestatout")
ZonalStatistics – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird durch Berechnung des Maximalwerts aus dem multidimensionalen Eingabe-Wert-Raster für jede Zone eine multidimensionale zonale Ausgabe erstellt.

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

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

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

Lizenzinformationen

  • Basic: Erfordert Spatial Analyst oder Image Analyst
  • Standard: Erfordert Spatial Analyst oder Image Analyst
  • Advanced: Erfordert Spatial Analyst oder Image Analyst

Verwandte Themen