# Combinatorial XOr (Spatial Analyst)

Available with Spatial Analyst license.

Available with Image Analyst license.

## Summary

Performs a Combinatorial eXclusive Or operation on the cell values of two input rasters.

If one input value is true (non-zero) and the other false (zero), the output is a different value for each unique combination of input values. If both inputs are true or both are false, the output value is 0.

Learn more about how Combinatorial tools work

## Usage

• The Combinatorial math tools interpret the inputs as Boolean values in which nonzero values are considered true and zero is considered false.

• Two inputs are necessary for this combinatorial evaluation to take place.

• The order of inputs for this tool is only relevant for the output attribute table.

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

## Parameters

 Label Explanation Data Type Input raster or constant value 1 The first input to use in this combinatorial operation.It must be of integer type.A number can be used as an input for this parameter, provided a raster is specified for the other parameter. To specify a number for both inputs, the cell size and extent must first be set in the environment. Raster Layer; Constant Input raster or constant value 2 The second input to use in this combinatorial operation.It must be of integer type.A number can be used as an input for this parameter, provided a raster is specified for the other parameter. To specify a number for both inputs, the cell size and extent must first be set in the environment. Raster Layer; Constant

### Return Value

 Label Explanation Data Type Output raster The output raster.The output is always of integer type. Raster

`CombinatorialXOr(in_raster_or_constant1, in_raster_or_constant2)`
 Name Explanation Data Type in_raster_or_constant1 The first input to use in this combinatorial operation.It must be of integer type.A number can be used as an input for this parameter, provided a raster is specified for the other parameter. 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 second input to use in this combinatorial operation.It must be of integer type.A number can be used as an input for this parameter, provided a raster is specified for the other parameter. To specify a number for both inputs, the cell size and extent must first be set in the environment. Raster Layer; Constant

### Return Value

 Name Explanation Data Type out_raster The output raster.The output is always of integer type. Raster

### Code sample

CombinatorialXOr example 1 (Python window)

This example performs a Combinatorial XOr operation on two GRID rasters and outputs the result as an IMG raster.

``````import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outCXOr = CombinatorialXOr("degs", "cost")
outCXOr.save("C:/sapyexamples/output/outcxor.img")``````
CombinatorialXOr example 2 (stand-alone script)

This example performs a Combinatorial XOr operation on two GRID rasters.

``````# Name: CombinatorialXOr_Ex_02.py
# Description: Performs a Combinatorial Exclusive Or operation on
#              the cell values of two input rasters
# 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 = "cost"

# Execute CombinatorialXOr
outCXOr = CombinatorialXOr(inRaster1, inRaster2)

# Save the output
outCXOr.save("C:/sapyexamples/output/outcxor")``````

## Licensing information

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