Mod (Spatial Analyst)

Spatial Analyst のライセンスで利用可能。

Image Analyst ライセンスで利用できます。

サマリー

セルごとに最初のラスターを 2 番目のラスターで除算したときの余り (モジュロ) を算出します。

Mod の図
OutRas = Mod(InRas1, InRas2)

使用法

  • このツールでは、入力の順番が結果に影響します。

  • [Mod] は、両方の入力が整数であることを前提としています。 入力が整数でない場合、小数点以下が切り捨てられて整数に変換されます。 出力値は、必ず整数になります。

  • 0 で割ったときの剰余は、出力では NoData が割り当てられます。 そのため、2 番目の入力で 0 または NoData の位置は、出力のその位置に NoData を返します。

  • 2 番目の入力値 (除数) が最初の入力値 (被除数) より大きい場合、出力は最初の入力と同じになります。 たとえば、8 を 10 で割る場合、整数の除算は余りに入力値 8 を返します。

  • 両方の入力がシングルバンド ラスターである場合、またはいずれかの入力が定数である場合、出力はシングルバンド ラスターになります。

  • 両方の入力がマルチバンド ラスターである場合、ツールは 1 つの入力の各バンドに対して演算を実行し、出力はマルチバンド ラスターになります。 各マルチバンド入力のバンド数は同一である必要があります。

  • 入力のうちの 1 つがマルチバンド ラスターであり、もう 1 つが定数である場合、ツールはマルチバンド入力に含まれるバンドごとに定数値を使用して演算を実行し、出力はマルチバンド ラスターになります。

  • ArcPy では、両方の入力が、同数の変数を含む多次元ラスターの場合、このツールは、ディメンション値が同じすべてのスライスについて演算を実行し、出力は多次元ラスターになります。 入力に含まれる変数には同じディメンションまたは共通のディメンションが必要です。共通でないディメンションが存在してはなりません。

    両方の入力に 1 つの変数が含まれているが、名前が異なっている場合は、演算を実行するために、matchMultidimensionalVariable ジオプロセシング環境を False に設定します。

    ArcPy では、入力のいずれかが多次元ラスターで、それ以外の入力が定数である場合、このツールは、すべての変数のすべてのスライスについて、その定数値を使用して演算を実行し、出力は多次元ラスターになります。

  • マップ代数演算では、このツールに相当する演算子シンボルは、「%」 (リンク) です。

  • このツールに適用されるジオプロセシング環境の詳細については、「解析環境と Spatial Analyst」をご参照ください。

パラメーター

ラベル説明データ タイプ
入力ラスター、または定数値 1

分子となる入力。

他のパラメーターでラスターが指定されている場合、数値をこのパラメーターの入力として使用できます。 両方の入力で数値を指定するには、セル サイズと範囲を最初に環境で設定しておく必要があります。

Raster Layer; Constant
入力ラスター、または定数値 2

分母となる入力。

他のパラメーターでラスターが指定されている場合、数値をこのパラメーターの入力として使用できます。 両方の入力で数値を指定するには、セル サイズと範囲を最初に環境で設定しておく必要があります。

Raster Layer; Constant

戻り値

ラベル説明データ タイプ
出力ラスター

出力ラスター。

セル値は、最初の入力を 2 番目の入力で割った余りです。

Raster

Mod(in_raster_or_constant1, in_raster_or_constant2)
名前説明データ タイプ
in_raster_or_constant1

分子となる入力。

他のパラメーターでラスターが指定されている場合、数値をこのパラメーターの入力として使用できます。 両方の入力で数値を指定するには、セル サイズと範囲を最初に環境で設定しておく必要があります。

Raster Layer; Constant
in_raster_or_constant2

分母となる入力。

他のパラメーターでラスターが指定されている場合、数値をこのパラメーターの入力として使用できます。 両方の入力で数値を指定するには、セル サイズと範囲を最初に環境で設定しておく必要があります。

Raster Layer; Constant

戻り値

名前説明データ タイプ
out_raster

出力ラスター。

セル値は、最初の入力を 2 番目の入力で割った余りです。

Raster

コードのサンプル

Mod の例 1 (Python ウィンドウ)

次の例では、最初のラスターのセルを 2 番目のラスターのセルで割ったときの余り (モジュロ) を返しています。

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")
Mod の例 2 (スタンドアロン スクリプト)

次の例では、最初のラスターのセルを 2 番目のラスターのセルで割ったときの余り (モジュロ) を返しています。

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

# Execute Mod
outMod = Mod(inRaster1, inRaster2)

# Save the output 
outMod.save("C:/sapyexamples/output/outmod")

関連トピック