Lookup (Spatial Analyst)

Available with Spatial Analyst license.

Available with 3D Analyst license.

Summary

Creates a new raster by looking up values found in another field in the table of the input raster.

Illustration

Lookup illustration
OutRas = Lookup(InRas1, "Category")

Usage

  • Both numeric (integer or floating point) or string field types are supported. If the field is integer or string, the output will be an integer raster; otherwise, the output raster will be a floating-point raster.

  • If the lookup field is of integer type, the values of that field will be written to the output raster attribute table as Value. Other items in the input raster attribute table will not be transferred to the output raster attribute table.

    For example, an attribute table of input raster with numeric field Attr1

        Value   Count   Attr1
        1       294     1
        2       345     8
        3       654     3

    Output attribute table from Lookup on Attr1 field

        Value   Count
        1       294
        3       654
        8       345
  • If the lookup field is a string type, the lookup field will appear in the output raster attribute table, and the value field will be the same numeric type as for input raster. Any other items in the input raster's attribute table will not be transferred to the output raster's attribute table.

    For example, consider the attribute table of an input raster with string field Text1

        Value   Count   Attr1   Text1
        1        294    1       A
        2       6218    8       B
        3         28    3
        4       3603    9       3

    The attribute table of the output raster from running Lookup on the Text1 field would be

        Value   Count   Text1
        1        294    A
        2       6218    B
        3         28    
        4       3603    3
  • See Analysis environments and Spatial Analyst for additional details on the geoprocessing environments that apply to this tool.

Syntax

Lookup(in_raster, lookup_field)
ParameterExplanationData Type
in_raster

The input raster that contains a field from which to create a new raster.

Raster Layer
lookup_field

Field containing the desired values for the new raster.

It can be a numeric or string type.

Field

Return Value

NameExplanationData Type
out_raster

The output raster whose values are determined by the specified field of the input raster.

Raster

Code sample

Lookup example 1 (Python window)

This example creates a new raster determined by the specified field of the input raster.

import arcpy
from arcpy import env  
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outRaster = Lookup("mycity","land_code")
outRaster.save("C:/sapyexamples/output/mylandcode.img")
Lookup example 2 (stand-alone script)

This example creates a new raster determined by the specified field of the input raster.

# Name: lookup_example02.py
# Description: Creates a new raster by looking up values found in another 
#              field in the table of the input raster.
# 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
inRaster = "mycity"
lookupField = "land_code"

# Execute Lookup
outRaster = Lookup(inRaster, lookupField)

# Save the output 
outRaster.save("C:/sapyexamples/output/mylandcode")

Licensing information

  • Basic: Requires Spatial Analyst or 3D Analyst
  • Standard: Requires Spatial Analyst or 3D Analyst
  • Advanced: Requires Spatial Analyst or 3D Analyst

Related topics