Split Address Into Components (Geocoding)

Summary

Splits street address information into address components and creates a table or feature class with the additional components added as unique fields.

Illustration

Split Address Into Components tool illustration

Usage

  • The input address data can be a table or feature class that contains street address attributes that can be parsed or split into individual street address components.

  • You can store the input street address to be split in a single field, such as StreetName or Address, which you select as the input address field in the tool.

  • The input street address can also be in multiple fields such as when the house number and unit information are in separate fields. In this case, the fields are concatenated on the fly in the order they are selected, and the street address is split into its components.

  • Do not include zone information—such as city, neighborhood, subregion, and postal code—in the input street address. These components will not be parsed during processing and will cause incorrect results if they are included.

  • The Exceptions File parameter value should contain a row for every record for which you want to specify a custom parsing pattern. Format the file so it contains the input address field (if you have more than one field, concatenate the values into a single string) followed by the expected split address components. The field names for the split address components must match the following:

    • AddNum
    • StPreDir
    • StPreType
    • StName
    • StType
    • StDir
    • UnitType
    • UnitName
    • BuildingType
    • BuildingUnit
    • LevelType
    • LevelName
    Note:

    Not all fields are required; only those necessary based on the custom address when split into components are required.

    Note:

    For more information, download an example of an exceptions file.

    The first address in the file, 123 South Beach Avenue, is typically split into the following fields:

    AddNumStPreDirStNameStType

    123

    South

    Beach

    Avenue

    The exceptions file, however, will create the following custom split:

    AddNumStNameStType

    123

    South Beach

    Avenue

  • This tool supports parallel processing. If your computer has multiple processors or processors with multiple cores, better performance may be achieved, particularly when splitting addresses in larger datasets. If the Parallel Processing Factor environment is not set (the default), parallel processing is scaled based on the size of the table and number of logical cores. Only one process is used for tables with less than 50 rows, but the tool scales the number of processes used up to the number of logical processors on the machine for tables with many rows. Setting the environment to 0 will disable parallel processing. Specifying a factor between 1 and 99 will cause the tool to identify the percentage of logical cores to use by applying the formula (Parallel Processing Factor / 100 * Logical Cores) rounded to the nearest integer. If the result of this formula is 0 or 1, parallel processing will not be enabled.

  • You can review and update the output file generated by this tool in the Split Address Review pane. This process also allows you to generate or add to an updated exceptions file that can be used in the Exceptions File parameter when splitting data with this tool in the future.

Parameters

LabelExplanationData Type
Country or Region

Specifies the country addressing structure that will be used to split addresses into components.

The default is the regional setting of the operating system.

  • Australia Australia
  • AustriaAustria
  • BelgiumBelgium
  • Canada Canada
  • Switzerland Switzerland
  • Germany Germany
  • SpainSpain
  • FranceFrance
  • Great BritainGreat Britain
  • IsraelIsrael
  • NetherlandsNetherlands
  • United States United States
String
Input Address Data

The table or feature class containing street address information that will be split into individual address components.

Zone information, such as city, neighborhood, subregion, and postal code, is not supported.

Table View
Input Address Fields

The field or fields in the input table or feature class that, when concatenated, will form the street address to be split. Zone information, such as city, neighborhood, subregion, and postal code, is not supported.

The order in which the fields are selected is the order the fields will be concatenated.

String
Output Address Data

The output feature class or table that will contain the split street address data.

Dataset
Exceptions File
(Optional)

The table that contains street parsing exceptions.

The table can be in any supported table format.

Table View

arcpy.geocoding.SplitAddressIntoComponents(country_code, in_address_data, in_address_fields, out_address_data, {in_exceptions})
NameExplanationData Type
country_code

Specifies the country addressing structure that will be used to split addresses into components.

The default is the regional setting of the operating system.

  • AUS Australia
  • AUTAustria
  • BELBelgium
  • CAN Canada
  • CHE Switzerland
  • DEU Germany
  • ESPSpain
  • FRAFrance
  • GBRGreat Britain
  • ISRIsrael
  • NLDNetherlands
  • USA United States
String
in_address_data

The table or feature class containing street address information that will be split into individual address components.

Zone information, such as city, neighborhood, subregion, and postal code, is not supported.

Table View
in_address_fields
[in_address_fields,...]

The field or fields in the input table or feature class that, when concatenated, will form the street address to be split. Zone information, such as city, neighborhood, subregion, and postal code, is not supported.

The order in which the fields are selected is the order the fields will be concatenated.

String
out_address_data

The output feature class or table that will contain the split street address data.

Dataset
in_exceptions
(Optional)

The table that contains street parsing exceptions.

The table can be in any supported table format.

Table View

Code sample

SplitAddressIntoComponents example 1 (Python window)

Split a table with single-field address strings into separate components.


import arcpy
atlanta_addresses = r"C:\AtlantaAddresses.csv"
arcpy.geocoding.SplitAddressIntoComponents("USA", atlanta_addresses, "Address", 
                                           r"C:\MySplitAddresses.csv", 
                                           "ExceptionsFile.csv")

Licensing information

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

Related topics