Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I need to learn a way in which I can normalize data and in the same process duplicate certain records of a point feature class. The issue is as follows. I am provided address data in the following format (a single field):

"1234, 1236, 1238 Travis Blvd" or "1234/ 1236/ 1238 Travis Blvd"

I currently manually select each individual record in this format, and then make a copy (Ctrl V, Control C) into the target layer (same as origin). In the case above, I would make two copies. I then manually edit the address to make each record unique. It is totally fine that the geography for all resulting points is identical. All other fields in the record should be preserved in this process.

Does anyone have a slick idea on how to automate (script) this task?

share|improve this question

You could automate this using a python/arcpy script. The script flow would go something like this:

  1. Generate xy coordinates for all your address features using the Add XY Coordinates tool/code
  2. Create a new address field to hold new address value using Add Field
  3. Use a SearchCursor to iterate through your address feature class/address field and look for multiple number instances that are separated by spaces
  4. Using a conditional if statement, if step 2 is true then select feature, get address field value, and get both x and y field values also
  5. Split out each number and assign them to a list
  6. Next, assign the street name to a separate street variable, adn assign both x and y field values to there own variables
  7. Loop through your address list and pull out an address number and generate the new feature using a Insert Cursor to write new geometrics by using your x and y variable values
  8. Once you pull all the address values out of the list you can delete the source selected feature using Delete Features

Continue cursoring through feature class table until all multiple address features are re-assigned and deleted.

Hope that helps


The links that I gave you were for ArcGIS v10.1, however I believe those arcpy methods exist also in version 10.

share|improve this answer
In step 3, though very fiddly, regular expression can help you analyze each record quickly for different cases of anomalies. – awesomo Apr 19 '13 at 19:52
Thanks so much. Ill give it a go. – Matt Apr 24 '13 at 0:06

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.