6

I've imported a table into ArcGIS which I'd like to split into multiple shapefiles. The splits would occur between groups of records separated by any of 3 columns. In other words, col1, col2, and col3 together create a unique identifier. I'm thinking it would require the following elements but I can't quite put it together:

  • Use ModelBuilder
  • Use SQL Statement to sort table records by 3 column identifier
  • Iterate through table records and write each group to new shapefile (possibly using 'Select by Attributes')
  • Create each shapefile name based upon combined col1, col2, col3 names

What I've tried already:

  • Used 'Split by Attribute' tool by Fox Tools to split table. Works great on smaller tables, not so well on this one with 4000+ records and multiple attribute fields to examine for splitting.

Any thoughts?

PolyGeo
65.5k29 gold badges115 silver badges350 bronze badges
asked Feb 18, 2013 at 20:43
5
  • 1
    Do you use a database software? That appears to be the easiest option. Then concatenate col1, col2, col3 into a new field and select based on unique values of the resulting variable. Or you could perform the concatenation in ArcMap's field calculator and presumably feed that to the Fox Tools (haven't used it, but it seems your problem was having your criteria in three columns.) Commented Feb 18, 2013 at 21:28
  • The Fox Tools tool wouldn't even process my table given the # of records. That would be the most limiting criteria to this approach. Commented Feb 18, 2013 at 21:34
  • Interesting. 4000 records doesn't sound like a lot to me. Depending on how many times you need to do this (one off? frequently?), and how many unique combinations you will have of col1, col2, col3, you may want to split the table before importing/displaying in arcmap. Commented Feb 18, 2013 at 21:41
  • I'm going to be performing this action multiple times so I'm trying to create/document a process. I suspect this tool isn't the most robust solution though it's been perfectly adequate for smaller projects. Commented Feb 18, 2013 at 21:48
  • 2
    Have you tried this one? resources.arcgis.com/gallery/file/geoprocessing/… Commented Feb 18, 2013 at 22:56

1 Answer 1

7

Combining the script mentioned above by AkselO with model builder, I would go with the model below. Create a new field, use the field calculator to create a unique identifier (by combining fields 1, 2 and 3) then use the script to split that shapefile by the unique field value.

enter image description here

answered Feb 18, 2013 at 23:17

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.