How to use an address range value to create a new record for each address within the range?

2038
21
12-20-2016 06:47 AM
ShannonGrumbly2
New Contributor III

I have a shapefile of parcels which contains an address for each parcel. Some of these addresses are listed as ranges (e.g. 4422-88 Wissahickon Ave). Is there a way to create a new record for each address within that range? I essentially want many addresses associated with a parcel if the parcel contains many addresses. I am assuming it would require the use of a geocoder, but I am not sure how that could be utilized. Any advice would be great!

0 Kudos
21 Replies
JoeBorgione
MVP Emeritus

Given the range you provide above, how many actual physical addresses are associated with it?  Are there 66 (odd and even) or 33 (even only) or some combination?  Do you need an actual point for each?  If so, yes you'd want to geocode each address.  Otherwise you could create a table record of each address by iterating through the range using a cursor in Python, but this is where I hand if off to Dan_Patterson‌ or dkwiens

That should just about do it....
ShannonGrumbly2
New Contributor III

I just checked in our online software (not associated with ESRI/ArcGIS), and there are 3 addresses on file within that range. There will obviously be more or less addresses associated with other ranges. Maybe this becomes a question of how I can bring in data from our online system?

0 Kudos
JoeBorgione
MVP Emeritus

That's why I thought I'd toss that out little tidbit out there; a range of values is often times misleading with respect to actuality.  Just a guess, but there should be a way to get a data dump of what you are after from the source itself.

That should just about do it....
TimWitt2
MVP Alum

Yes, with ranges everything is hypothetical. It is tough to create a point layer from ranges, unless you don't care about points that aren't real life addresses.  

ShannonGrumbly2
New Contributor III

I've decided that having points that may not be real life addresses is acceptable for this project. How would I go about using a cursor? I'm alright at Python, but cursors are not my forte.

I also found the following code to add the increments via Field Calculator (either in Desktop or Python):

rec=0  def autoIncrement():   global rec   pStart = 1    pInterval = 1   if (rec == 0):     rec = pStart    else:     rec += pInterval    return rec

autoIncrement()
0 Kudos
TimWitt2
MVP Alum

Hey Shannon,

just a quick question, you mentioned an only software that has all the addresses. What format is this information in?

Tim

0 Kudos
ShannonGrumbly2
New Contributor III

I'm not sure what you mean by "format" of the software, but it is a standalone system that is available with particular credentials. I'm not sure that I can access a list of each address, but it allows you to search for information given block number, parcel number, ID, etc. or any combination of those.

In terms of the actual addresses, I receive data in all formats. Static tables, Oracle database tables, views, so on and so forth. So I would like to have one table containing all addresses and any alias associated with an address.

I'm thinking that a Search Cursor/Insert Cursor can accomplish this (the first task of parsing address ranges into single addresses), but I'm not seeing much on any existing forums.

0 Kudos
TimWitt2
MVP Alum

Can you post a screenshot of an example row of your polygon layer?

I hoped that with an export (csv, excel spreadsheet) of the data in your online tool you could geocode those addresses.

0 Kudos
ShannonGrumbly2
New Contributor III

Sure. I used the 'Standardize Address' tool to create the HouseNum, PreDir, PreType, StreetName, SufType, and SufDir fields from 'ADDRESS'. As you can see, it didn't do a perfect job because it left prefix directions with the house number ranges.

 

0 Kudos