Mod (Spatial Analyst)
Zusammenfassung
Ermittelt den Rest (Modulo) der Teilung des ersten Rasters durch das zweite Raster ermittelt auf Zellenbasis.
Bild
Verwendung
Für dieses Werkzeug ist die Reihenfolge der Eingaben relevant.
-
Bei Mod wird davon ausgegangen, dass beide Eingaben ganze Zahlen sind. Wenn irgendwelche Eingaben nicht ganzzahlig sind, werden diese Eingaben durch Abschneiden in Ganzzahlwerte umgewandelt. Ausgabewerte sind immer ganzzahlig.
-
Etwaigen durch 0 modulierten (dividierten) Werten wird in der Ausgabe der Wert "NoData" zugewiesen. Daher wird für jede Position in der zweiten Eingabe, die den Wert 0 oder "NoData" aufweist in der Ausgabe der Wert "NoData" zurückgegeben.
-
Wenn der zweite Eingabewert (der Divisor) größer ist als der erste Eingabewert (der Dividend), ist die der Wert der Ausgabe mit dem der ersten Eingabe identisch. Wenn Sie z. B. versuchen, den Wert 8 durch den Wert 10 zu teilen, gibt die ganzzahlige Divisionsberechnung den Eingabewert 8 als Rest zurück.
-
In Map-Algebra ist das entsprechende Operator-Symbol für dieses Werkzeug "%" (Link).
Syntax
Parameter | Erläuterung | Datentyp |
in_raster_or_constant1 |
Die Zählereingabe. Für diesen Parameter kann eine Zahl als Eingabe verwendet werden, vorausgesetzt für den anderen Parameter wird ein Raster angegeben. Wenn Sie für beide Eingaben eine Zahl angeben möchten, Sie müssen zunächst in der Umgebung die Zellengröße und die Ausdehnung festlegen. | Raster Layer | Constant |
in_raster_or_constant2 |
Die Nennereingabe. Für diesen Parameter kann eine Zahl als Eingabe verwendet werden, vorausgesetzt für den anderen Parameter wird ein Raster angegeben. Wenn Sie für beide Eingaben eine Zahl angeben möchten, Sie müssen zunächst in der Umgebung die Zellengröße und die Ausdehnung festlegen. | Raster Layer | Constant |
Rückgabewert
Name | Erläuterung | Datentyp |
out_raster |
Das Ausgabe-Raster. Die Zellenwerte sind der Rest aus der Division der Werte in der ersten Eingabe durch die zweite Eingabe. | Raster |
Codebeispiel
In diesem Beispiel wird der Wert des Restes (Modulo) aus der Division der Zellen im ersten Raster durch das zweite Raster zurückgegeben.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outMod = Mod("degs", "negs")
outMod.save("C:/sapyexamples/output/outmod.tif")
In diesem Beispiel wird der Wert des Restes (Modulo) aus der Division der Zellen im ersten Raster durch das zweite Raster zurückgegeben.
# Name: Mod_Ex_02.py
# Description: Finds the remainder of the first raster when divided by
# the second raster on a cell-by-cell basis
# 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
inRaster1 = "degs"
inRaster2 = "negs"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute Mod
outMod = Mod(inRaster1, inRaster2)
# Save the output
outMod.save("C:/sapyexamples/output/outmod")