Split (Analysis)
Summary
Splitting the Input Features creates a subset of multiple output feature classes.
The Split Field's unique values form the names of the output feature classes. These are saved in the target workspace.
Illustration
Usage
-
The Split Features dataset must be polygons.
-
The Split Field data type must be character. Its unique values form the names of output feature classes.
-
The split field's unique values must start with a valid character. If the target workspace is a file, personal, or ArcSDE geodatabase, the field's values must begin with a letter. Field values that begin with a number as in "350 degrees" cause an error. Exception: Shapefile names can begin with a number, and a folder target workspace allows field values that begin with a number.
-
The target workspace must already exist.
-
The total number of output feature classes equals the number of unique Split Field values and the extent of overlay of the Input Features with the Split Features.
-
The feature attribute table of each output feature class contains the same fields as the Input Features attribute table.
-
Annotation features are split and saved in the output features based on the Split Features polygon in which the lower left starting point of the annotation string falls.
-
Attribute values from the input feature classes will be copied to the output feature class. However, if the input is a layer or layers created by the Make Feature Layer tool and a field's Use Ratio Policy is checked, then a ratio of the input attribute value is calculated for the output attribute value. When Use Ratio Policy is enabled, whenever a feature in an overlay operation is split, the attributes of the resulting features are a ratio of the attribute value of the input feature. The output value is based on the ratio in which the input feature geometry was divided. For example, If the input geometry was divided equally, each new feature's attribute value is assigned one-half of the value of the input feature's attribute value. Use Ratio Policy only applies to numeric field types.
Caution:Geoprocessing tools do not honor geodatabase feature class or table field split policies.
-
This tool will use a tiling process to handle very large datasets for better performance and scalability. For more details, see Geoprocessing with large datasets.
Syntax
Parameter | Explanation | Data Type |
in_features |
The features to be split. | Feature Layer |
split_features |
The features containing a tabular field whose unique values are used to split the Input Features and provide the output feature classes' names. | Feature Layer |
split_field |
The character field used to split the Input Features. This field's values identify the Split Features used to create each output feature class. The Split Field's unique values provide the output feature classes' names. | Field |
out_workspace |
The workspace where the output feature classes are stored. | Workspace ; Feature Dataset |
cluster_tolerance (Optional) |
The minimum distance separating all feature coordinates (nodes and vertices) as well as the distance a coordinate can move in X or Y (or both). Set the value to be higher for data that has less coordinate accuracy and lower for datasets with extremely high accuracy. | Linear unit |
Code Sample
The following Python Window script demonstrates how to use the Split tool.
import arcpy
arcpy.env.workspace = "c:/data"
arcpy.Split_analysis("Habitat_Analysis.gdb/vegtype", "climate.shp", "Zone", "C:/output/Output.gdb", "1 Meters")
Split vegetation layer into separate feature classes for each climate zone.
# Name: Split.py
# Description: Split vegetation layer into separate feature classes for each climate zone
# Author: ESRI
# import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Split vegetation layer by climate zones, write to Output.gdb
veg = "Habitat_Analysis.gdb/vegtype"
splitFeatures = "climate.shp"
splitField = "Zone"
outWorkspace = "C:/output/Output.gdb"
clusterTol = "1 Meters"
arcpy.Split_analysis(veg, splitFeatures, splitField, outWorkspace, clusterTol)