Standardize Addresses (Geocoding)

Summary

Standardizes the address information in a table or feature class.

Standardizing the address components in your reference data into multiple address fields was a necessary step before building an address locator prior to ArcGIS Desktop 10.0. This step is no longer required because the standardization process occurs when the address locator is built regardless of whether the address components are stored in a single field or split across multiple fields. Standardizing the reference data and normalizing abbreviations and periods is not recommended at ArcGIS Desktop 10.0 and later because they will not improve geocoding performance or quality and they are now done during the geocoding process.

Addresses are often presented in different forms that may contain various abbreviations of words, such as W for WEST or ST for STREET. Based on an address style you select, the address can be split into multiple parts, such as House Number, Prefix Direction, Prefix Type, Street Name Suffix Type, Unit Type, and Unit Number. The address style specifies the components of an address and determines how the components are ordered and standardized; however, there is no guarantee how the data will be standardized based on the logic in the address locator style and the input data. Depending on the application, some address styles may expand the value of a word instead of abbreviating it.

The input address you want to standardize can be stored in a single field. If the address information has already been split into multiple fields in the input feature class or table, this tool can concatenate the fields on the fly and standardize the information.

Illustration

Standardize Addresses

Usage

  • The input address data can be a table or feature class that contains address attributes that can be standardized based on an address locator style.

  • The input address you want to standardize can be stored in a single field, such as the Address field in a customer address table. You can then select the field as the Input Address Field in the tool.

    If the address information has already been split into multiple fields in the input feature class or table, which you can find in common reference street or point address data, the standardization process will concatenate the fields on the fly and standardize the information. You specify the fields in the order that forms the complete address.

    Note:

    When using an address locator style that handles street addresses, you may want to specify a house number field or any numeric field as the Input Address Field along with other address attributes so the concatenated address can be standardized correctly. For example, consider the input string 17 Mile Road, where Mile may be interpreted as a street name instead of 17 Mile when no house number is given. The confusion can be avoided if the input address is 101 17 Mile Road. The ObjectID field is a numeric field that you can use for this purpose as illustrated above.

  • The standardized result can be saved in one of the following two output options:

    • An output table or feature class that contains a copy of the rows or features in the input table and the standardized address fields. This is the default.
    • An output table that contains only the standardized address fields and a relationship class that joins to the input table or feature class.

Syntax

arcpy.geocoding.StandardizeAddresses(in_address_data, in_input_address_fields, in_address_locator_style, in_output_address_fields, out_address_data, {in_relationship_type})
ParameterExplanationData Type
in_address_data

The table or feature class containing address information that you want to standardize.

Table View
in_input_address_fields
[in_input_address_field,...]

The set of fields in the input table or feature class that, when concatenated, forms the address to be standardized.

String
in_address_locator_style

The address locator style to use to standardize the address information in the input table or feature class.

Address Locator Style
in_output_address_fields
[in_output_address_fields,...]

The set of standardized address fields to include in the output table or feature class.

String
out_address_data

The output table or feature class to create containing the standardized address fields.

Dataset
in_relationship_type
(Optional)

Indicates whether to create a static or dynamic output dataset.

  • StaticCreates an output table or feature class that contains a copy of the rows or features in the input table and the standardized address fields. This is the default.
  • DynamicCreates a table containing the standardized address fields and a relationship class that joins to the input table or feature class.
    Note:

    The option is only supported if both the input and output datasets are stored in the same geodatabase workspace.

Boolean

Code sample

StandardizeAddresses example (Python window)

The following Python window script demonstrates how to use the StandardizeAddresses function in immediate mode.

import arcpy
arcpy.env.workspace = "C:/ArcTutor/geocoding/atlanta.gdb"

# Set local variables:
input_feature_class = "streets"
address_fields = "ID;FULL_STREET_NAME"
locator_style = "US Address - Dual Ranges"
standardized_fields = "PreDir;PreType;StreetName;SufType;SufDir"
standardized_feature_class = "StandardizedStreet"

arcpy.StandardizeAddresses_geocoding(input_feature_class, address_fields, locator_style, standardized_fields, standardized_feature_class, "Static")

Environments

Licensing information

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

Related topics