[GIS] Count the number of polygon features within a polygon

arcgis-10.2arcgis-desktopcountoverlapping-features

I am using ArcMap 10.2.2 (Advanced license, no toolbar add ons/no spatial analyst) on a Windows 7 computer (i7 processor, 8GB RAM). I have used ArcMap for other basic analyses, but am fairly new to the program and have only very basic coding skills.

I am trying to calculate the number of mammal species (TerrestMamm_diss on the image below/light red outlines) that are found within the geographic range of a subset of those species (all species in the order Carnivora, or Carns1 on the map/dark green outlines, one of which is selected). My ideal output would look like the attribute table below plus an additional field indicating the count (i.e. FID, Shape, binomial, mammal_count).

screenshot of ArcMap document

There are ~250 features on the Carns1 layer and ~5,300 on the TerrestMamm_diss layer (whose attribute table looks just like that of Carns1 shown in the image, since Carns1 is just a subset of TerrestMamm_diss). Both layers have overlapping polygons.

I do not need to keep the identification/binomials of the mammal species found within each Carnivora range, I just need the total count of species. I've searched on this forum and elsewhere and I've found ways to count point features within a polygon (and I'm familiar with the model and procedure to count overlapping polygons using the "spaghetti and meatballs" method), but I'm not sure how to do this.

My initial thought was to turn all the terrestrial mammal species (TerrestMamm_diss) into points (feature to point tool) and count them that way, but I realized putting a single point within a large species range would mean that point wouldn't necessarily lie within each of the overlapping polygons.

Best Answer

With some crowd sourcing, the way to do this is pretty straight-forward, although it took almost an hour of processing time on my computer (in case anyone else is frantically googling around):

Perform a one-to-many spatial join using Carns1 as the target feature (with their ranges dissolved to allow multipart features, as I did before posting the initial question) and TerrestMamm_diss (also dissolved with multipart features) as the join features. This creates a join_count field on Carns1 that counts the number of overlapping TerrestMamm_diss features.