A growing request by students on campus lately is the accurate geocoding of addresses. My opinion is that with the high accessibility of aerial imagery these days, students want geocoded addresses to be placed exactly on the house or business. I have been recommending these students to geocode their addresses based on parcel boundaries as opposed to using a street file. I want to take this opportunity to organize my thoughts about the steps needed to geocode directly to the parcel boundaries, specifically using ArcGIS desktop software.
Of course, you will get much better precision geocoding an address to the parcel boundary. For example, if I look at the Google Map image of that old rundown house I lived in while a student in Buffalo, you will see the marker get close but not quite exactly right on. The house is actually the next to last house near the dead-end. StreetMap USA will not geocode the address with high enough precision, nor will Yahoo! Maps, and of course TIGER/Line geocoding (poor-man's geocoding) will be way off.
The only solution for a high level of accuracy is to geocode addresses based on the parcel boundaries, provided the parcel boundary feature class is accurate as well.
So, here's the steps.
- Of course first you must obtain the parcel polygon containing the address information for each parcel.
- Ensure that the full street address is broken into two fields, one for the street number and one for the street name. This is essential. If the street number and name occupy the same field, they must be separated. There are a number of ways to do this. A quick regular expressions script in Python will do the trick. Or, using Excel, you can extract numbers from alphanumeric strings or split the field by using convert text to columns.
- This is the important step. Now we're ready to create our geocoding service. In ArcToolbox, launch Geocoding Tools/Create Address Locator. The style that we want is 'US One Address'. You can see in the Field Map that the street number and the street name must be separated. Fill out the form and let 'r rip.
- Now that we've got the geocoding service set up properly, we can geocode as we normally would, but using the service we just created. All matched addresses will be placed exactly in the parcel centroid.