地理编码地址 (Geocoding)
摘要
对地址表进行地理编码。此过程需要一个表和一个地址定位器或复合地址定位器,表中存储了要进行地理编码的地址。此工具根据地址定位器来匹配地址并将每个输入记录的结果保存在新的点要素类中。
插图
用法
您可以对储存在单个字段中或拆分成多个字段的地址进行地理编码。单个输入字段存储完整地址,例如,303 Peachtree St NE, Atlanta, GA 30308。如果将常规美国地址的输入地址拆分成 Address、City、State 和 ZIP 等多个字段,则支持多个字段。
法律声明:使用 ArcGIS 版本 10 以前的版本所创建的定位器时,仅支持多个字段。
默认情况下,输出要素类会存储输入地址的副本及其他信息(例如每个记录的得分、状态和匹配的地址)。可使用 ArcMap 中的重新匹配地址工具或交互重新匹配对话框来重新匹配地址。一旦匹配过程结束且创建了要素类,编辑输入地址表中的地址就不会改变输出要素类中的结果。
-
如果想在更新输入地址表时自动更新输出要素类中的匹配结果,请将动态输出要素类参数设置为 true(选中)。系统会为输入表和输出要素类创建关系类。如果在 ArcMap 的编辑会话中更改了输入表中的某个地址,将会立即对该地址重新进行地理编码,并用新的地理编码结果更新输出要素类中的相关记录。此外,还支持在输入表中添加新记录或删除现有记录后自动进行更新。
注:仅当输入地址表和输出要素类处于同一地理数据库工作空间中时,才能使用此选项。
许可:如果使用的是 ArcGIS for Desktop Basic 级别许可,则此选项不可用,因为无法使用 Basic 级别许可生成关系类。
要求 ArcGIS Online for organizations 订阅与使用 ArcGIS Online 世界地理编码服务的地址表相匹配。有关详细信息,请参阅使用 ArcGIS Online 世界地理编码服务。
语法
参数 | 说明 | 数据类型 |
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 是要进行地理编码的地址表中相应的字段名称。 可以指定一个单个输入字段以存储完整地址。如果常规美国地址的输入地址拆分成 Address、City、State 和 ZIP 等不同字段,也可以指定多个字段。 如果不想将地址定位器所使用的可选输入地址字段映射到输入地址表中的字段,请使用 <None> 来代替字段名,以此指定不存在任何映射。 | Field Info |
out_feature_class |
经过地理编码的输出要素类或 shapefile。 | Feature Class |
out_relationship_type (可选) |
指示是在地理编码要素类的内部创建地址表的静态副本,还是创建动态更新的地理编码要素类。
| Boolean |
代码实例
以下 Python 窗口脚本演示了如何在即时模式下使用地理编码地址 (GeocodeAddresses) 函数。
# Import system modules
import arcpy
from arcpy import env
env.workspace = "C:/ArcTutor/Geocoding/atlanta.gdb"
# Set local variables:
address_table = "customers"
address_locator = "Atlanta_AddressLocator"
geocode_result = "geocode_result"
arcpy.GeocodeAddresses_geocoding(address_table, address_locator, "Address Address VISIBLE NONE;City CITY VISIBLE NONE;State State VISIBLE NONE;Zip Zip VISIBLE NONE", geocode_result, STATIC)