Available with Spatial Analyst license.

Available with Image Analyst license.

Map algebra supports a series of operators. The operators can be grouped into Arithmetic, Bitwise, Boolean, and Relational categories. The map algebra operators are available with the ArcGIS Spatial Analyst license and the ArcGIS Image Analyst license.

The operators are overloaded since they exist in the Spatial Analyst ArcPy module, the Image Analyst ArcPy module, and as standard operators in Python. To distinguish whether an input is a raster as opposed to a scalar variable, the input raster is cast using the Raster class: Raster("inRas"). The available operators are listed in the table below.

In operators that accept two inputs, if both inputs are scalars, the Python operator will be used working on scalars. If one or both of the inputs are rasters (identified by casting with the Raster class), the ArcPy operator is used and will work on each cell within the rasters. For those operators that accept a single input, if it is a scalar, the Python operator is used; if a raster is input, the ArcPy operator is used.

## Operators by category

The available operators are listed by category in the following table.

Map algebra operator | Description | Image Analyst geoprocessing tool | |
---|---|---|---|

Arithmetic | |||

+ (link) | Addition | ||

+ (link) | Unary plus | N/A | |

- (link) | Subtraction | ||

- (link) | Unary minus | ||

* (link) | Multiplication | ||

** (link) | Power | ||

/ (link) | Division | ||

// (link) | Integer division | N/A | |

% (link) | Modulo | ||

Bitwise | |||

<< (link) | Bitwise left shift | ||

>> (link) | Bitwise right shift | ||

Boolean | |||

& (link) | Boolean and | ||

~ (link) | Boolean complement | ||

| (link) | Boolean or | ||

^ (link) | Boolean exclusive or | ||

Relational | |||

== (link) | Equal to | ||

> (link) | Greater than | ||

>= (link) | Greater than or equal to | ||

< (link) | Less than | ||

<= (link) | Less than or equal to | ||

!= (link) | Not equal to |