Joins in ArcGIS Pro

A join is a common database operation where two data sets are connected to form a single data set. This tutorial covers the variety of different ways of joining data sets in ArcGIS Pro.

Attribute Joins

An attribute join connects two datasets based on common key values.

Figure
Attribute joins

Joins on Standardized Codes

One common applications of joins is joining table data with polygons for mapping and spatial analysis.

A major challenge is that attribute joins need to have a variables in both layers that match exactly.

Accordingly, whenever possible, such joins should be made on standardized codes rather than names like country names or county names where abbreviations or variations in spelling or capitalization can result in matching failures and gaps in the data.

For example, demographic table data from data.census.gov can be joined with TIGER polygons based on GEO_IDs created from FIPS codes. This process is described in this tutorial on Geospatial Data from the US Census Bureau.

Figure
Joining a USCB table and polygon feature class using GEO_ID

The same technique can be used to join indicator data from The World Bank with country polygons based on three-letter ISO country codes. This process is described in this tutorial on Geospatial Data from the World Bank.

Figure
Joining a World Bank table and polygon feature class using ISO country codes

Joins on Names

In cases were standardized codes are unavailable, joins based on names may be necessary. This is an iterative process that involves performing an initial join, finding the features with missing data, correcting the table names, and repeating until all available table rows are matched to polygons.

Common reasons for name mismatches include:

This example demonstrates an attribute join of a CSV file containing 2022 chicken meat production in tonnes by country joined with a shapefile of Natural Earth country polygons based on the country name fields.

Joining a table with a feature class based on names

Spatial Joins

An spatial join connects two datasets based on a spatial relationship where attribute values are transferred from a set of features in a join layer to a target layer.

Joining Points to Areas

Spatial joins can be used to aggregate point data into areas.

Figure
Spatial joins for counts

One example use of this technique is counting the number of crime incidents in neighborhoods. This technique is demonstrated in this tutoril on Spatial Analysis of Crime Point Data in ArcGIS Pro.

Figure
Aggregating crime counts by neighborhood

Spatial joins can also be used to sum or average values from point attributes. For example, installed capacity from power plant points can be summed within state polygons to find the total installed plant capacity per state. This technique is demonstrated in this tutorial on Point Data Anlysis in ArcGIS Pro.

Figure
Summing power plant installed capacity by state

Joining Areas to Points

The direction of the join can be reversed to join data from areas (join features) to points (target features).

Spatial join area attributes (join layer) to points (target layer)

One example is the joining demographic data from census tract areas to power plant points so that the demographics of areas around those power plants can be compared to overall demographics. This technique is demonstrated in this tutorial on Point Data Anlysis in ArcGIS Pro.

Figure
Spatial join census tract (area) attributes to power plant points

Geocoding Location Names to Areas

If you have a table of data with location names, you can avoid the issue issue with inconsistent names by first geocoding the names to points, and then performing a spatial join to transfer the data into polygons for mapping.

This example demonstrates this technique by geocoding a CSV file containing 2022 chicken meat production in tonnes by country and then performing a spatial join with a shapefile of Natural Earth country polygons to create a choropleth.

Joining a table with a feature class via geocoding

Joining Dissimilar Areas

Just as spatial joins can be used to aggregated data from points into polygons, spatial joins can be used to aggregate data from smaller polygons into larger polygons.

This example demonstrates use of the Summarize Within tool to join census tract level demographic data from the Minn 2015-2019 ACS Tracts feature service to neighborhood boundaries in the City of Chicago.

Joining dissimilar areas

Spatial Joins of Raster Data to Areas

When working with vector and raster data, it can be helpful to join raster data to points or areas for analysis.

Raster Data to Points

ArcGIS Pro has a number of tools that can be used to transfer values from rasters to point features.

This example demonstrates extracting elevation values from an digital elevation model (DEM) (n41_w088_3arc_v2) to a point feature class of Chicago Transit Authority "L" Stations (CTA_Stations) using the Extract Values to Points tool to create a new point feature class with the elevation values (CTA_Elevation).

Joining raster data to points

Point Elevation

If your primary interest is getting elevation values for points and you have fewer than 1,000 features, the Summarize Elevation tool can be used to add an elevation field to a point feature class.

This example demonstrates adding elevation values to a point feature class of Chicago Transit Authority "L" Stations.

Getting elevation values for points

Area Elevation

As with points, if your primary interest is getting elevation values for areas and you have fewer than 1,000 features, the Summarize Elevation tool can be used to add an elevation field to an area feature class.

This example neighborhood boundaries in the City of Chicago.

Getting elevation values for areas