Skip To Content

Mod

Available with Spatial Analyst license.

Available with Image Analyst license.

Summary

Finds the remainder (modulo) of the first raster when divided by the second raster on a cell-by-cell basis.

Illustration

Mod illustration
OutRas = Mod(InRas1, InRas2)

Usage

  • The order of inputs is relevant for this tool.

  • Mod assumes both its inputs are integers. If any inputs are not integer, those inputs will be converted to integers through truncation. Output values are always integers.

  • Any value modulated (divided) by 0 is assigned NoData on the output. Therefore, any location on the second input that is either 0 or NoData will return NoData for that location on the output.

  • If the second input value (the divisor) is larger than the first input value (the dividend), the output will be the same value as the first input. For example, if you were to divide a value of 8 by value 10, the integer division calculation will return the input value 8 for the remainder.

  • In Map Algebra, the equivalent operator symbol for this tool is "%" (link).

  • See Analysis environments and Spatial Analyst for additional details on the geoprocessing environments that apply to this tool.

Syntax

Mod (in_raster_or_constant1, in_raster_or_constant2)
ParameterExplanationData Type
in_raster_or_constant1

The numerator input.

A number can be used as an input for this parameter, provided a raster is specified for the other parameter. To be able to specify a number for both inputs, the cell size and extent must first be set in the environment.

Raster Layer; Constant
in_raster_or_constant2

The denominator input.

A number can be used as an input for this parameter, provided a raster is specified for the other parameter. To be able to specify a number for both inputs, the cell size and extent must first be set in the environment.

Raster Layer; Constant

Return Value

NameExplanationData Type
out_raster

The output raster.

The cell values are the remainder of the division of the values in the first input by the second input.

Raster

Code sample

Mod example 1 (Python window)

This example returns the value of the remainder (modulus) of dividing the cells in the first raster by the second.

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 example 2 (stand-alone script)

This example returns the value of the remainder (modulus) of dividing the cells in the first raster by the second.

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

Licensing information

  • ArcGIS Desktop Basic: Requires Spatial Analyst or Image Analyst
  • ArcGIS Desktop Standard: Requires Spatial Analyst or Image Analyst
  • ArcGIS Desktop Advanced: Requires Spatial Analyst or Image Analyst

Related topics