SHP and DBF Object Count Mismatch

Hello all, I am exporting a dataset from ArcGis, and I am getting a mismatch in the number of objects in my SHP and DBF files. It is a large data set, with over 200,000 objects (lot lines). There is a difference of about 60 objects total. I am using TT Toolbox’s import SHP component to bring in the lot lines.

Hi @j.brennan22
Are you modifying the data at all in ArcGIS or just using it to export? Are there more objects in the SHP or DBF file? Can you post a ZIP of the data at issue for troubleshooting? Can you also post a link to the original data?

Hey Brian! Thank you for the reply! To answer your questions, first, I am not modifying the data in ArcGIS, only narrowing down the selection. The data set contains all tax lots in NYC, and I am using the “Select by Attributes” function only to select the lots with the Borough Code of BK (Brooklyn). I am then exporting that data which I am trying to load into Grasshopper.

As for the number of objects, in the SHP file vs the DBF, there is more in the SHP file.

I am downloading the following data set from the MapPLUTO database:

And finally, my exported data is in the link below.

Thank you so much!

Hi @j.brennan22 ,
I think the mismatch is because some of the parcels have interior boundaries/holes. This will give you two polylines for one parcel (or feature).

I tried looking for TT’s ImportSHP, but didn’t see it in their latest release of Toolbox. Using Heron, I’m able to see the 60 object discrepancy you found. With Heron the output is meshes for polygon features (keeping the 1:1 relationship), but if you extract the edges from these, you’ll see there are 60 more polylines than features.

If you happen to be looking for a way to cull features from a large data set based on a value in a field (ie Borough = BK) without using ArcGIS, Heron’s Ogr2Ogr component can help:


@Brian_Washburn, thank you! This does the trick. I was unaware of Heron, but I’ve got it installed, and it’s working perfectly.

I suspected it might be interior boundaries and couldn’t get Grasshopper’s boundary surface to work for me. Your method is exactly what I need. I believe I will next extract the exterior curves, sort within the branch by area, and grab the larger of the two. This should give me the geometry I need!

Hello @Brian_Washburn and @j.brennan22,
that’s a really interesting topic you are discussing. I have been trying to read an shp-file with the according dbf-file in Grasshopper to get geometry output in Rhino, that is linked to its original attributes.
My first attempt was to use TTToolbox’s import shp as well, but there seem to be no object values anymore - so I got the geometry output, but no attributes. After some research I found the above mentioned Heron plugin and installed it, but only found 2 of the 5 components of Heron within Grasshopper, that don’t include the ImportVector function.

This may be a simple question, but how does one get all of the components working? (Usually plugins are saved within the special folders of Grasshopper, but that doesn’t seem to work here)

Best regards
reich architekten

Hello! I believe you need to install using the PackageManager command in Rhino, not the traditional way of loading the components directly.

I would delete the old version and do a new reinstall using the package manager.

Also, Brian, I have been teaching this plug-in in my class and the students love it!

Joe Brennan, AIA


That is so great to hear @j.brennan22 ! One of the main reasons for developing Heron was I wish I had something like it when I was a student.

And yes, @reich , the package manager is the place to get it until I get around to posting it on food4rhino with example files.


Thank you very much for help and reply :slight_smile: we reinstalled it and every thing went well!

Best regards
Reich. Architekten