Label | Explanation | Data Type |
Input Layer | The layer with the polygons that will be merged with neighboring polygons. | Feature Layer |
Output Feature Class | The feature class to be created. | Feature Class |
Eliminating polygon by border (Optional) | Specifies whether the selected polygon will be merged with a polygon with the longest shared border or the largest area.
| Boolean |
Exclusion Expression (Optional) | An SQL expression that will be used to identify features that will not be altered. | SQL Expression |
Exclusion Layer (Optional) | An input polyline or polygon feature class or layer that defines polygon boundaries, or portions thereof, that will not be eliminated. | Feature Layer |
Available with Advanced license.
Summary
Eliminates polygons by merging them with neighboring polygons that have the largest area or the longest shared border. Eliminate is often used to remove small sliver polygons that are the result of overlay operations, such as those performed by Intersect and Union tools.
Illustration
Usage
Features that will be eliminated are determined by a selection applied to a polygon layer. The selection must be determined in a previous step using the Select Layer by Attribute tool or the Select Layer by Location tool, or by querying a layer in a map.
The Eliminate tool may not eliminate all selected features, depending on your dataset. Selected features cannot be merged with a neighboring selected feature. For example, a selected feature that is surrounded by other selected features, or only borders on other selected features cannot be merged. To eliminate the selected features that were not merged, select the features again and run the tool again.
A selected feature that has no neighboring features with a common boundary cannot be merged.
The Input Layer parameter must include a selection; otherwise, the tool will fail.
The Exclusion Expression and Exclusion Layer parameters are not mutually exclusive and can be used together to give full control over what is eliminated.
Parameters
arcpy.management.Eliminate(in_features, out_feature_class, {selection}, {ex_where_clause}, {ex_features})
Name | Explanation | Data Type |
in_features | The layer with the polygons that will be merged with neighboring polygons. | Feature Layer |
out_feature_class | The feature class to be created. | Feature Class |
selection (Optional) | Specifies whether the selected polygon will be merged with a polygon with the longest shared border or the largest area.
| Boolean |
ex_where_clause (Optional) | An SQL expression that will be used to identify features that will not be altered. For more information on SQL syntax, see the help topic. | SQL Expression |
ex_features (Optional) | An input polyline or polygon feature class or layer that defines polygon boundaries, or portions thereof, that will not be eliminated. | Feature Layer |
Code sample
The following Python window script demonstrates how to use the Eliminate function in immediate mode.
import arcpy
arcpy.env.workspace = "C:/data/Portland.gdb/Census"
arcpy.MakeFeatureLayer_management("blockgrp", "blocklayer")
arcpy.SelectLayerByAttribute_management("blocklayer", "NEW_SELECTION",
'"Area_Sq_Miles" < 0.15')
arcpy.Eliminate_management("blocklayer", "C:/output/output.gdb/eliminate_output",
"LENGTH", '"OBJECTID" = 9')
The following stand-alone script demonstrates how to use the Eliminate function.
# Name: Eliminate_Example2.py
# Description: Eliminate features based on a selection.
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data/Portland.gdb/Census"
# Set local variables
inFeatures = "blockgrp"
tempLayer = "blocklayer"
expression = '"Area_Sq_Miles" < 0.15'
outFeatureClass = "C:/output/output.gdb/eliminate_output"
exclusionExpression = '"OBJECTID" = 9'
# Execute MakeFeatureLayer
arcpy.MakeFeatureLayer_management(inFeatures, tempLayer)
# Execute SelectLayerByAttribute to define features to be eliminated
arcpy.SelectLayerByAttribute_management(tempLayer, "NEW_SELECTION", expression)
# Execute Eliminate
arcpy.Eliminate_management(tempLayer, outFeatureClass, "LENGTH",
exclusionExpression)