I have a village level shapefile.

village level shapefile

I selected villages using the "select by attribute" function to group them into electoral units (labelled as GP in attribute table.

creating electoral units

I now wish to make multiple shapefiles using all unique values from the attribute column labelled GP.

Is there a way to achieve that without selecting each unique value and using the "export data" function?

I have around 400 unique values in the GP columns and wish to covert them to shapefiles. Selecting them individually would take a lot of time I am unfamiliar with writing code so I was hoping there is a way to achieve this without writing code. If it is not possible, could someone help me with creating a loop? I am unfamiliar with python and working with code.

  • 1
    Is there a specific reason for why you want to place the subdistricts of each electoral unit in a sperate shapefile? Since you mentioned that you are not so familiar working with Geodata I just wanted to point out that another option would be to use something like unique identifier for each electoral unit. It will likely make it much easier for downstream work as you may encounter situations where you need to load the 400 files into your GIS and perform calculations 400 times, instead of a single time.
    – Vincé
    Jul 24, 2022 at 11:42
  • Thanks for your question. I would like to group electoral units by sub district as I intend to later make subdistrict level shapefiles as well. Thanks for your point about creating a unique identifier for each electoral unit. Is there an easy way to achieve this in ArdGIS?
    – MapnCheese
    Jul 24, 2022 at 23:44

1 Answer 1


A tool exists for this operation it is called Split By Attribute.

You would set the split field to be your GP field.

Your Answer

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

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