Geocoding Table with Anonymized Addresses & Lat/Lon

2320
19
Jump to solution
11-28-2022 10:31 AM
WalidAlmasri1
Occasional Contributor

Hello, I am trying to set up a process to map locations to a street centerline by either an address or or by lat/lon if no address exists or if the address cannot be found.  I have created a geocoder that only uses the Street Address Role and have a process set up to change addresses from 1234 N Main to 1200 N Main in an effort to anonymize them.  All locations have a lat/lon even if no address exists.  The geocoder is configured properly and geocodes the events to the street centerline with the address.  The issue I am having is that the geocoder will not locate events by lat/lon where no addresses match can be found.  Even if I only specify the geocoder to use the Coordinate System Category in the Geocode Table dialogue box, it will return zero matches.

Just wondering if anyone has any input on how I can geocode based on lat/lon.  Everything I've tried seems to not work.

Thanks!

0 Kudos
19 Replies
ShanaBritt
Esri Regular Contributor

@WalidAlmasri1 If the Address field is the input address field and it contains 'Null' values for the record, there is no input that is geocoded, so the record with a 'Null' value will be unmatched. I would suggest moving the coordinate pair to the address field, by selecting all of the records that have 'Null' values, the using Calculate Field concatenate the Lat and Lon fields into the Address field. [Lon] + ","+ [Lat] Then geocode the table with the locator that has the Coordinates category enabled.

WalidAlmasri1
Occasional Contributor

@ShanaBritt THANK YOU, this is exactly the information I was looking for.  Why I was unable to find this answer is beyond me.  I guess it makes sense now because that's how you have to type it in the Locate box in Pro...

It is now matching my coordinates 🙂

WalidAlmasri1_0-1672764589765.png

 

0 Kudos
ShelbyZelonisRoberson
Occasional Contributor III

Hi! I'm trying to do something similar. Do you geocode to the centerline using 1234 N Main or to 1200 N Main? Would you mind sharing your process for anonymizing the addresses to the block level? Thank you!

0 Kudos
WalidAlmasri1
Occasional Contributor

Hi @ShelbyZelonisRoberson, exactly correct.  Build a geocoder using only centerlines with Street Address Role.  You need to have address ranges in the centerline though in order for this to work.

On the backend, the data is converted into a new table.  So addresses like 1264 N Main St, are converted to 1300 Block of N Main St and if the address is 1231 N Main St, we convert it to 1200 Block of N Main St. You don't need to have 'block of' text in your address, but the geocoder will understand it if it's there.  Then run those new addresses through the geocoder to get the new location.  I'm not certain how having block information in the centerline would affect geocoding accuracy since we don't have that, but let's assume the street had an address range of 1000-3000, addresses that get converted to 1000 Block are placed on the beginning point of the line, addresses that are 2000 block would be placed on the center of the line, and addresses on the 3000 block will be placed on the other end of the line.

The only downside I'm seeing here is if you have multiple addresses on one street that get converted with the same block information, they will stack.  One way around that would be to geocode the actual address but only display the 'block of' address, but then that could potentially place the address close to where you are trying to mask.  Or limit the data by date range.

I hope this helps, let me know if you have any questions.

0 Kudos
ShanaBritt
Esri Regular Contributor

For stacked addresses, you could cartographically disperse them using https://pro.arcgis.com/en/pro-app/latest/tool-reference/cartography/disperse-markers.htm.

 

-Shana

0 Kudos
WalidAlmasri1
Occasional Contributor

@ShanaBritt is there a particular way the data needs to be in order to return the "Addr_type" output field to equal "StreetMidBlock"?

I've actually removed our "Block of" information from the address and now only do the full hundred block address and am having good results, but in areas where ranges are limited, mapping to StreetMidBlock would be helpful as some get missed, but I'm not sure how to return that result from the geocoder.  Everything I return is LatLon, StreetAddress or StreetAddressExt no matter how I type using the examples ESRI provides.

  • 100 block of New York St, Redlands, CA
  • 1600 blk E Cliff Dr, El Paso
  • 200-500 block Taylor St, San Francisco
  • 1700-1900 blk of Locust St, Philadelphia, Pennsylvania

Thanks!!

0 Kudos
ShanaBritt
Esri Regular Contributor

@WalidAlmasri1 ,

Just to clarify, are you saying that whenever you try to search for an address in one of the following street block formats that the Addr_type value returned is not "StreetMidBlock"?

  • 100 block of New York St, Redlands, CA
  • 1600 blk E Cliff Dr, El Paso
  • 200-500 block Taylor St, San Francisco
  • 1700-1900 blk of Locust St, Philadelphia, Pennsylvania

 

Or are you asking about the reference data to build the StreetAddress role locator?

-Shana

0 Kudos
WalidAlmasri1
Occasional Contributor

@ShanaBritt That is correct, but I just figured out why.  Under Locator Properties > Geocoding Options, once alter the Categories to support from "All categories supported by the Locator" to "Only categories selected here", the ability to search with any of the block formats above is unsupported.

0 Kudos
ShanaBritt
Esri Regular Contributor

@WalidAlmasri1 , did you have specific categories selected and not the default of all supported categories? In the current released versions of ArcGIS Pro, StreetMidBlock is not listed as a category you can select in the 'Categories to support' property; however, it is something we are looking into for a future release.

Thanks for the update on your situation.

-Shana

0 Kudos
WalidAlmasri1
Occasional Contributor

Yes, I did have specific categories selected, mainly removing StreetName as that is problematic.  Including StreetMidBlock as a category would definitely be my recommendation.  You also lose the ability to search by 'StreetMidBlock' when you disable categories in the coordinates too.

I hope to see this added in the very near future.


Thanks!

0 Kudos