摘要
对地址表进行地理编码。此过程需要一个存储有要进行地理编码的地址的表和一个地址定位器或复合地址定位器。此工具根据地址定位器来匹配地址并将每个输入记录的结果保存在新的点要素类中。
插图
用法
您可以对储存在单个字段中或拆分成多个字段的地址进行地理编码。单个输入字段存储完整地址,例如,303 Peachtree St NE, Atlanta, GA 30308。如果将常规美国地址的输入地址拆分成地址、城市、州和邮政编码等多个字段,则系统支持多个字段。
默认情况下,输出要素类会存储输入地址的副本及其他信息(例如每个记录的得分、状态和匹配的地址)。可使用 ArcMap 中的重新匹配地址工具或交互重新匹配对话框来重新匹配地址。一旦匹配过程结束且创建了要素类,编辑输入地址表中的地址就不会改变输出要素类中的结果。
如果想在更新输入地址表时自动更新输出要素类中的匹配结果,请将动态输出要素类参数设置为 true(选中)。系统会为输入表和输出要素类创建关系类。如果在 ArcMap 的编辑会话中更改了输入表中的某个地址,将会立即对该地址重新进行地理编码,并用新的地理编码结果更新输出要素类中的相关记录。此外,还支持在输入表中添加新记录或删除现有记录后自动进行更新。
要使用 ArcGIS Online 世界地理编码服务来匹配地址表,则需要 ArcGIS Online for organizations 订阅。有关详细信息,请参阅使用 ArcGIS Online 世界地理编码服务。
语法
GeocodeAddresses_geocoding (in_table, address_locator, in_address_fields, out_feature_class, {out_relationship_type})
参数 | 说明 | 数据类型 |
in_table | 要进行地理编码的地址表。 | Table View |
address_locator | 要用于对地址表进行地理编码的地址定位器。 | Address Locator |
in_address_fields [input_address_field, table_field_name] | 此参数中的每个字段映射均采用格式 input_address_field, table_field_name,其中 input_address_field 是地址定位器所指定的输入地址字段名称,table_field_name 是要进行地理编码的地址表中相应的字段名称。 可以指定一个单个输入字段以存储完整地址。如果常规美国地址的输入地址拆分成地址、城市、州和邮政编码等不同字段,则您还可以指定多个字段。 如果不想将地址定位器所使用的可选输入地址字段映射到输入地址表中的字段,请使用 <None> 来代替字段名,以此指定不存在任何映射。 | Field Info |
out_feature_class | 经过地理编码的输出要素类或 shapefile。 | Feature Class |
out_relationship_type (可选) | 指示是在地理编码要素类的内部创建地址表的静态副本,还是创建动态更新的地理编码要素类。
| Boolean |
代码示例
GeocodeAddresses 示例(Python 窗口)
以下 Python 窗口脚本演示了如何在即时模式下,通过多线程地理编码使用 GeocodeAddresses 函数。
import arcpy
from arcpy import env
env.workspace = "C:/ArcTutor/Geocoding/Atlanta.gdb"
# Set local variables:
address_table = "customers"
address_locator = "C:/ArcTutor/Geocoding/Atlanta"
address_fields = "Street Address;City City;State State;ZIP Zip"
geocode_result = "geocode_result"
arcpy.GeocodeAddresses_geocoding(address_table, address_locator, address_fields, geocode_result, 'STATIC')
GeocodeAddresses 单线程示例(Python 窗口)
以下 Python 窗口脚本演示了如何在即时模式下,通过单线程地理编码使用 GeocodeAddresses 函数。
import arcpy
from arcpy import env
env.workspace = "C:/ArcTutor/Geocoding/Atlanta.gdb"
# Set local variables:
address_table = "customers"
address_locator = "C:/ArcTutor/Geocoding/Atlanta"
address_fields = "'Single Line Input' SINGLELINE"
geocode_result = "singleline_geocode_result"
arcpy.GeocodeAddresses_geocoding(address_table, address_locator, address_fields, geocode_result, 'STATIC')
环境
许可信息
- ArcGIS Desktop Basic: 受限
- ArcGIS Desktop Standard: 是
- ArcGIS Desktop Advanced: 是