{"id":2712852,"date":"2025-03-10T06:00:43","date_gmt":"2025-03-10T13:00:43","guid":{"rendered":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=2712852"},"modified":"2025-03-09T12:06:07","modified_gmt":"2025-03-09T19:06:07","slug":"spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation","title":{"rendered":"Spatial data science using ArcGIS Notebooks Blog 2: Data fusion, wrangling, and preparation"},"author":154341,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[23341],"tags":[387782,555752,760452,24341,759592],"industry":[],"product":[36841,36561],"class_list":["post-2712852","blog","type-blog","status-publish","format-standard","hentry","category-analytics","tag-arcgis-api-for-python","tag-arcgis-notebooks","tag-data-engineering","tag-python","tag-spatial-data-science","product-api-python","product-arcgis-pro"],"acf":{"authors":[{"ID":154341,"user_firstname":"Nicholas","user_lastname":"Giner","nickname":"Nick Giner","user_nicename":"nginer","display_name":"Nicholas Giner","user_email":"NGiner@esri.com","user_url":"","user_registered":"2021-01-07 14:31:25","user_description":"Nick Giner is a Product Manager for Spatial Analysis and Data Science.  Prior to joining Esri in 2014, he completed Bachelor\u2019s and PhD degrees in Geography from Penn State University and Clark University, respectively. In his spare time, he likes to play guitar, golf, cook, cut the grass, and read\/watch shows about history.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/01\/headshot-e1610030307989-213x200.jpeg' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"},{"ID":358272,"user_firstname":"Halle","user_lastname":"Martinucci","nickname":"Halle Martinucci","user_nicename":"hmartinucci","display_name":"Halle Martinucci","user_email":"hmartinucci@esri.com","user_url":"","user_registered":"2024-06-18 18:43:42","user_description":"Halle is an Associate Product Marketing Manager on Esri\u2019s Spatial Analytics &amp; Data Science team.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/01\/halle-martinucci-3z7a7050-213x200.jpg' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"}],"short_description":"Use an ArcGIS Pro Notebook for a complete spatial data science workflow to map gentrification in US cities","flexible_content":[{"acf_fc_layout":"content","content":"<h2>Introduction<\/h2>\n<p>In this second blog article, we\u2019ll discuss the input data and the steps used to bring it all together and calculate our five gentrification indicator variables.<\/p>\n<h2>Data sources<\/h2>\n<p>The input data came from three main sources:<\/p>\n<p><strong><a href=\"https:\/\/www.nhgis.org\/\">1) National Historical Geographic Information System (NHGIS)<\/a><\/strong> &#8211; provided freely downloadable US census tract boundary GIS files and CSVs representing hundreds of data variables related to socio-economic and demographic characteristics, education level, median family income, and median gross rent. For the purpose of this study, I downloaded data for these variables for four time steps: 1990, 2000, 2010, and 2020.<\/p>\n<p><a href=\"https:\/\/livingatlas.arcgis.com\/en\/home\/\"><strong>2) ArcGIS Living Atlas of the World<\/strong><\/a> \u2013 because certain variables were not available from NHGIS for 2020, we approximated these with the most recent data from the ArcGIS Living Atlas. Detailed steps for accessing this data are described in the following sections.<\/p>\n<p><strong><a href=\"https:\/\/opendata.cityofnewyork.us\/\">3) NYC OpenData<\/a> <\/strong>&#8211; was used to help us identify and remove areas where gentrification cannot take place (e.g. parks, airports, cemeteries, etc.). In particular, we used the 2010 Neighborhood Tabulation Areas.<\/p>\n"},{"acf_fc_layout":"content","content":"<h2>Data preparation steps<\/h2>\n<p><strong><em>Prepare the US census tract GIS data in ArcGIS Pro<\/em><\/strong><\/p>\n<p>The base GIS dataset representing US census tract boundaries for the year 2010* contains several important fields.\u00a0 For example, the GISJOIN field contains a unique identifier on which all subsequent joins will take place. \u00a0The STATEFP10 and COUNTYFP10 fields contain unique state and county <a href=\"https:\/\/www.nist.gov\/standardsgov\/compliance-faqs-federal-information-processing-standards-fips\"><strong>FIPS<\/strong><\/a> identifiers for each census tract, respectively.\u00a0 To make it easier to query census tracts for specific areas such as New York City (which contains census tracts across five counties) we used the <a href=\"https:\/\/pro.arcgis.com\/en\/pro-app\/latest\/tool-reference\/data-management\/calculate-field.htm\"><strong>Calculate Field<\/strong><\/a> tool to concatenate the STATEFP10 and COUNTYFP10 fields into a new text field.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2713222,"id":2713222,"title":"tract_concat","filename":"tract_concat.jpg","filesize":96710,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tract_concat.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/tract_concat","alt":"","author":"154341","description":"","caption":"","name":"tract_concat","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 21:15:28","modified":"2025-03-03 21:15:28","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":806,"height":375,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tract_concat-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tract_concat.jpg","medium-width":464,"medium-height":216,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tract_concat.jpg","medium_large-width":768,"medium_large-height":357,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tract_concat.jpg","large-width":806,"large-height":375,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tract_concat.jpg","1536x1536-width":806,"1536x1536-height":375,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tract_concat.jpg","2048x2048-width":806,"2048x2048-height":375,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tract_concat.jpg","card_image-width":806,"card_image-height":375,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tract_concat.jpg","wide_image-width":806,"wide_image-height":375}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"sidebar","content":"<p><strong>Note:<\/strong> *The NHGIS provides time series tables which contain data from multiple times (e.g. 1990, 2000, 2010, 2020) for the geographic boundaries from a single census.\u00a0 In our case, the time series tables are standardized to the 2010 census tract boundaries.\u00a0 You can read more about the methodology for geographic standardization <strong><a href=\"https:\/\/www.nhgis.org\/time-series-tables#standardization\">here<\/a><\/strong>.<\/p>\n","image_reference":false,"layout":"standard","image_reference_figure":"","snippet":"","spotlight_name":"","section_title":"","position":"Center","spotlight_image":false},{"acf_fc_layout":"content","content":"<p>From here, we can select census tracts by their true county FIPS code.\u00a0 In the case of New York City, a simple attribute query of five county FIPS codes (36005-Bronx, 36047-Kings, 36061-New York, 36081-Queens, 36085-Richmond) gave us the 2,164 census tracts that make up New York City.\u00a0 After exporting these selected census tracts as a new feature class with the appropriate spatial reference (in this case, <a href=\"https:\/\/www.spatialreference.org\/ref\/epsg\/32118\/\"><strong>NAD 1983 State Plane New York Long Island<\/strong><\/a>), the final step was to use the <a href=\"https:\/\/pro.arcgis.com\/en\/pro-app\/latest\/tool-reference\/analysis\/spatial-join.htm\"><strong>Spatial Join<\/strong><\/a> tool to append the neighborhood name to any census tract whose center falls within it.\u00a0 This will allow us to identify census tracts in parks, airports, cemeteries, etc. that will be removed from the analysis in subsequent steps.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2713312,"id":2713312,"title":"spatial_join","filename":"spatial_join.jpg","filesize":39581,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/spatial_join.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/spatial_join-2","alt":"","author":"154341","description":"","caption":"","name":"spatial_join-2","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 21:26:33","modified":"2025-03-03 21:26:33","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":392,"height":448,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/spatial_join-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/spatial_join.jpg","medium-width":228,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/spatial_join.jpg","medium_large-width":392,"medium_large-height":448,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/spatial_join.jpg","large-width":392,"large-height":448,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/spatial_join.jpg","1536x1536-width":392,"1536x1536-height":448,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/spatial_join.jpg","2048x2048-width":392,"2048x2048-height":448,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/spatial_join.jpg","card_image-width":392,"card_image-height":448,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/spatial_join.jpg","wide_image-width":392,"wide_image-height":448}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Using ArcGIS Pro\u2019s\u00a0<a href=\"https:\/\/pro.arcgis.com\/en\/pro-app\/latest\/help\/analysis\/geoprocessing\/data-engineering\/what-is-data-engineering.htm\"><strong>Data Engineering<\/strong><\/a>\u00a0view, we can easily see and explore the summary statistics and distributions of each variable in the feature class.\u00a0 We also now have the \u201cntaname\u201d attribute, which represents the neighborhood name.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2713322,"id":2713322,"title":"DE_view","filename":"DE_view.jpg","filesize":113834,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/DE_view.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/de_view-4","alt":"","author":"154341","description":"","caption":"","name":"de_view-4","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 21:31:03","modified":"2025-03-03 21:31:03","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1238,"height":438,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/DE_view-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/DE_view.jpg","medium-width":464,"medium-height":164,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/DE_view.jpg","medium_large-width":768,"medium_large-height":272,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/DE_view.jpg","large-width":1238,"large-height":438,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/DE_view.jpg","1536x1536-width":1238,"1536x1536-height":438,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/DE_view.jpg","2048x2048-width":1238,"2048x2048-height":438,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/DE_view-826x292.jpg","card_image-width":826,"card_image-height":292,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/DE_view.jpg","wide_image-width":1238,"wide_image-height":438}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"image","image":{"ID":2713332,"id":2713332,"title":"nyc_census_tracts_parks","filename":"nyc_census_tracts_parks.jpg","filesize":164977,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/nyc_census_tracts_parks.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/nyc_census_tracts_parks","alt":"","author":"154341","description":"","caption":"Map showing the census tract boundaries (yellow) and neighborhoods.  Parks, airports, and cemeteries are green.","name":"nyc_census_tracts_parks","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 21:33:43","modified":"2025-03-07 17:03:39","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":689,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/nyc_census_tracts_parks-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/nyc_census_tracts_parks.jpg","medium-width":303,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/nyc_census_tracts_parks.jpg","medium_large-width":768,"medium_large-height":661,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/nyc_census_tracts_parks.jpg","large-width":800,"large-height":689,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/nyc_census_tracts_parks.jpg","1536x1536-width":800,"1536x1536-height":689,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/nyc_census_tracts_parks.jpg","2048x2048-width":800,"2048x2048-height":689,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/nyc_census_tracts_parks-540x465.jpg","card_image-width":540,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/nyc_census_tracts_parks.jpg","wide_image-width":800,"wide_image-height":689}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p><strong><em>Read and wrangle tabular CSV files of historic census data (year 2000)<\/em><\/strong><\/p>\n<p>Now that I have a clean, prepared GIS dataset, I\u2019ll move into an ArcGIS Pro Notebook to continue cleaning, wrangling, integrating, and otherwise preparing my datasets for analysis.<\/p>\n<p>Like most data science notebooks, I\u2019ll start off with a cell where I import the necessary Python libraries.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2713362,"id":2713362,"title":"python_libs","filename":"python_libs.jpg","filesize":14693,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/python_libs.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/python_libs-3","alt":"","author":"154341","description":"","caption":"","name":"python_libs-3","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 21:41:23","modified":"2025-03-03 21:41:23","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":244,"height":170,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/python_libs-213x170.jpg","thumbnail-width":213,"thumbnail-height":170,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/python_libs.jpg","medium-width":244,"medium-height":170,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/python_libs.jpg","medium_large-width":244,"medium_large-height":170,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/python_libs.jpg","large-width":244,"large-height":170,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/python_libs.jpg","1536x1536-width":244,"1536x1536-height":170,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/python_libs.jpg","2048x2048-width":244,"2048x2048-height":170,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/python_libs.jpg","card_image-width":244,"card_image-height":170,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/python_libs.jpg","wide_image-width":244,"wide_image-height":170}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<ul>\n<li><strong><a href=\"https:\/\/pandas.pydata.org\/\">pandas<\/a><\/strong>\u00a0\u2013 working with and manipulating tabular data<\/li>\n<li><a href=\"https:\/\/numpy.org\/\"><strong>numpy<\/strong><\/a>\u00a0\u2013 scientific and mathematical computing, working with arrays and matrices<\/li>\n<li><strong><a href=\"https:\/\/developers.arcgis.com\/python\/\">arcgis<\/a>\u00a0<\/strong>\u2013 the ArcGIS API for Python, used to convert ArcGIS data to Pandas DataFrames<\/li>\n<li><strong><a href=\"https:\/\/pro.arcgis.com\/en\/pro-app\/latest\/arcpy\/get-started\/what-is-arcpy-.htm\">arcpy<\/a>\u00a0<\/strong>\u2013 the ArcGIS geoprocessing framework. Provides Pythonic access to the ~2,000+ geoprocessing tools, as well as functions for data management, conversion, and map automation<\/li>\n<li><a href=\"https:\/\/docs.python.org\/3\/library\/os.html\"><strong>os<\/strong><\/a>\u00a0\u2013 working with operating system files and file directories<\/li>\n<\/ul>\n<p>Next, I\u2019ll use<strong> <a href=\"https:\/\/pandas.pydata.org\/\">Pandas<\/a><\/strong> to work with the NHGIS CSV files.\u00a0 All told, six CSV files were needed to cover the variables that will eventually be used to calculate the five gentrification indicators.\u00a0 In some cases, one CSV contained all required variables for multiple time stamps (e.g. 2000 and 2020), while in other cases there was a different CSV file for each time stamp.\u00a0 The following steps were then performed within the notebook for each of the six CSV files.<\/p>\n<ul>\n<li>Read in the CSV file as a Pandas DataFrame using <strong><a href=\"https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.read_csv.html\"><em>.read_csv<\/em><\/a><\/strong><\/li>\n<li>Get the number of rows and columns using <strong><a href=\"https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.DataFrame.shape.html\"><em>.shape<\/em><\/a><\/strong>\n<ul>\n<li>We can see that this CSV file has ~111,000 rows representing census tracts, with 51 columns. Notice the first few columns, which contain unique identifiers (e.g. \u201ckey fields\u201d) that we will use to join tables together later in the workflow.<\/li>\n<\/ul>\n<\/li>\n<li>View the first few rows using <strong><a href=\"https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.DataFrame.head.html\"><em>.head<\/em><\/a><\/strong><\/li>\n<\/ul>\n"},{"acf_fc_layout":"image","image":{"ID":2713382,"id":2713382,"title":"initial_steps","filename":"initial_steps.jpg","filesize":117858,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/initial_steps.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/initial_steps","alt":"","author":"154341","description":"","caption":"","name":"initial_steps","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 21:46:45","modified":"2025-03-03 21:46:45","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1230,"height":370,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/initial_steps-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/initial_steps.jpg","medium-width":464,"medium-height":140,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/initial_steps.jpg","medium_large-width":768,"medium_large-height":231,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/initial_steps.jpg","large-width":1230,"large-height":370,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/initial_steps.jpg","1536x1536-width":1230,"1536x1536-height":370,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/initial_steps.jpg","2048x2048-width":1230,"2048x2048-height":370,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/initial_steps-826x248.jpg","card_image-width":826,"card_image-height":248,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/initial_steps.jpg","wide_image-width":1230,"wide_image-height":370}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<ul>\n<li>Generate a list of the column names using <strong><a href=\"https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.DataFrame.columns.html#pandas.DataFrame.columns\"><em>.columns<\/em><\/a><\/strong><\/li>\n<\/ul>\n"},{"acf_fc_layout":"image","image":{"ID":2713402,"id":2713402,"title":"list_of_vars","filename":"list_of_vars.jpg","filesize":93425,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/list_of_vars.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/list_of_vars","alt":"","author":"154341","description":"","caption":"","name":"list_of_vars","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 21:49:22","modified":"2025-03-03 21:49:22","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":702,"height":398,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/list_of_vars-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/list_of_vars.jpg","medium-width":460,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/list_of_vars.jpg","medium_large-width":702,"medium_large-height":398,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/list_of_vars.jpg","large-width":702,"large-height":398,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/list_of_vars.jpg","1536x1536-width":702,"1536x1536-height":398,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/list_of_vars.jpg","2048x2048-width":702,"2048x2048-height":398,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/list_of_vars.jpg","card_image-width":702,"card_image-height":398,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/list_of_vars.jpg","wide_image-width":702,"wide_image-height":398}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<ul>\n<li>Use the metadata for each CSV to determine which subset of columns to keep based on the variables you need for the analysis<\/li>\n<\/ul>\n"},{"acf_fc_layout":"image","image":{"ID":2713422,"id":2713422,"title":"metadata_codebook","filename":"metadata_codebook.jpg","filesize":355127,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/metadata_codebook.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/metadata_codebook","alt":"","author":"154341","description":"","caption":"","name":"metadata_codebook","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 21:51:25","modified":"2025-03-03 21:51:25","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1573,"height":556,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/metadata_codebook-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/metadata_codebook.jpg","medium-width":464,"medium-height":164,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/metadata_codebook.jpg","medium_large-width":768,"medium_large-height":271,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/metadata_codebook.jpg","large-width":1573,"large-height":556,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/metadata_codebook-1536x543.jpg","1536x1536-width":1536,"1536x1536-height":543,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/metadata_codebook.jpg","2048x2048-width":1573,"2048x2048-height":556,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/metadata_codebook-826x292.jpg","card_image-width":826,"card_image-height":292,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/metadata_codebook.jpg","wide_image-width":1573,"wide_image-height":556}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<ul>\n<li>Make a new Python list of \u201ccolumns to keep\u201d containing this subset of column names<\/li>\n<\/ul>\n"},{"acf_fc_layout":"image","image":{"ID":2713442,"id":2713442,"title":"vars_to_keep","filename":"vars_to_keep.jpg","filesize":62920,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/vars_to_keep.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/vars_to_keep","alt":"","author":"154341","description":"","caption":"","name":"vars_to_keep","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 21:53:02","modified":"2025-03-03 21:53:02","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1010,"height":216,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/vars_to_keep-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/vars_to_keep.jpg","medium-width":464,"medium-height":99,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/vars_to_keep.jpg","medium_large-width":768,"medium_large-height":164,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/vars_to_keep.jpg","large-width":1010,"large-height":216,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/vars_to_keep.jpg","1536x1536-width":1010,"1536x1536-height":216,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/vars_to_keep.jpg","2048x2048-width":1010,"2048x2048-height":216,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/vars_to_keep-826x177.jpg","card_image-width":826,"card_image-height":177,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/vars_to_keep.jpg","wide_image-width":1010,"wide_image-height":216}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<ul>\n<li>Create a new DataFrame containing only this subset of variables\n<ul>\n<li>Notice we\u2019ve gone from 51 columns to 28.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n"},{"acf_fc_layout":"image","image":{"ID":2713722,"id":2713722,"title":"subset_df.jpg","filename":"subset_df.jpg.png","filesize":2509542,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/subset_df.jpg.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/subset_df-jpg","alt":"","author":"154341","description":"","caption":"","name":"subset_df-jpg","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 23:14:35","modified":"2025-03-03 23:14:35","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":4202,"height":1739,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/subset_df.jpg-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/subset_df.jpg.png","medium-width":464,"medium-height":192,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/subset_df.jpg.png","medium_large-width":768,"medium_large-height":318,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/subset_df.jpg.png","large-width":1920,"large-height":795,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/subset_df.jpg-1536x636.png","1536x1536-width":1536,"1536x1536-height":636,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/subset_df.jpg-2048x848.png","2048x2048-width":2048,"2048x2048-height":848,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/subset_df.jpg-826x342.png","card_image-width":826,"card_image-height":342,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/subset_df.jpg-1920x795.png","wide_image-width":1920,"wide_image-height":795}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Next, I performed a series of steps to join all six Pandas DataFrames into one master DataFrame containing over 70 columns of data, some of which will be used to calculate the gentrification indicators.<\/p>\n<p>This was achieved using the Pandas <strong><a href=\"https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.merge.html\"><em>.merge<\/em><\/a><\/strong> function, which is conceptually similar to an attribute join in ArcGIS Pro.\u00a0 You simply pick the common (key) fields in the DataFrames you are joining together, and specify them in the \u201cleft_on\u201d and \u201cright_on\u201d arguments.<\/p>\n<p><strong><em>Geoenrich census tracts with current census data (year 2020)<\/em><\/strong><\/p>\n<p>As mentioned above, the NHGIS was missing the most recent data for 2020 for a few variables, so this was a good opportunity to leverage Esri\u2019s <strong><a href=\"https:\/\/www.esri.com\/en-us\/arcgis\/products\/arcgis-location-platform\/services\/geoenrichment\">GeoEnrichment<\/a><\/strong> capability and the ArcGIS Living Atlas of the World.<\/p>\n<p>1.\u00a0 Socio-demographic composition<\/p>\n<ul>\n<li>2000: non-Hispanic white population (NHGIS)<\/li>\n<li>2020: non-Hispanic white population (NHGIS)<\/li>\n<\/ul>\n<p>2. Education level<\/p>\n<ul>\n<li>2000: Population &gt; 24 years of age with at least a 4-year college degree (NHGIS)<\/li>\n<li>2020: <em>No data<\/em><\/li>\n<\/ul>\n<p>3. Age<\/p>\n<ul>\n<li>2000: Population between 20 and 34 years old (NHGIS)<\/li>\n<li>2020: <em>No data<\/em><\/li>\n<\/ul>\n<p>4. Income<\/p>\n<ul>\n<li>2000: Median family income (NHGIS)<\/li>\n<li>2020: <em>No data<\/em><\/li>\n<\/ul>\n<p>5. Rent costs<\/p>\n<ul>\n<li>2000: Median gross rent (NHGIS)<\/li>\n<li>2020: <em>No data<\/em><\/li>\n<\/ul>\n<p>Using the ArcGIS Pro <a href=\"https:\/\/pro.arcgis.com\/en\/pro-app\/latest\/tool-reference\/analysis\/enrich.htm\"><strong>Enrich<\/strong><\/a> tool, I was able to easily search for the variables I needed, populate the tool parameters, then <strong><a href=\"https:\/\/pro.arcgis.com\/en\/pro-app\/latest\/help\/analysis\/geoprocessing\/basics\/run-geoprocessing-tools.htm#ESRI_SECTION1_14C98A99F1BA47FB976F252C8FC0BE50\">copy the Python command<\/a><\/strong> so I could paste the syntax into my notebook to run the tool programmatically within my notebook.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2713462,"id":2713462,"title":"enrich_tool","filename":"enrich_tool.jpg","filesize":73743,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_tool.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/enrich_tool","alt":"","author":"154341","description":"","caption":"","name":"enrich_tool","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 22:00:08","modified":"2025-03-03 22:00:08","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":588,"height":600,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_tool-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_tool.jpg","medium-width":256,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_tool.jpg","medium_large-width":588,"medium_large-height":600,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_tool.jpg","large-width":588,"large-height":600,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_tool.jpg","1536x1536-width":588,"1536x1536-height":600,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_tool.jpg","2048x2048-width":588,"2048x2048-height":600,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_tool-456x465.jpg","card_image-width":456,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_tool.jpg","wide_image-width":588,"wide_image-height":600}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"image","image":{"ID":2713782,"id":2713782,"title":"enrich_variables","filename":"enrich_variables.jpg","filesize":142268,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_variables.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/enrich_variables","alt":"","author":"154341","description":"","caption":"","name":"enrich_variables","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 23:20:57","modified":"2025-03-03 23:20:57","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1133,"height":649,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_variables-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_variables.jpg","medium-width":456,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_variables.jpg","medium_large-width":768,"medium_large-height":440,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_variables.jpg","large-width":1133,"large-height":649,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_variables.jpg","1536x1536-width":1133,"1536x1536-height":649,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_variables.jpg","2048x2048-width":1133,"2048x2048-height":649,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_variables-812x465.jpg","card_image-width":812,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_variables.jpg","wide_image-width":1133,"wide_image-height":649}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"image","image":{"ID":2713792,"id":2713792,"title":"enrich_syntax","filename":"enrich_syntax.jpg","filesize":82763,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_syntax.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/enrich_syntax","alt":"","author":"154341","description":"","caption":"","name":"enrich_syntax","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 23:21:22","modified":"2025-03-03 23:21:22","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1174,"height":385,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_syntax-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_syntax.jpg","medium-width":464,"medium-height":152,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_syntax.jpg","medium_large-width":768,"medium_large-height":252,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_syntax.jpg","large-width":1174,"large-height":385,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_syntax.jpg","1536x1536-width":1174,"1536x1536-height":385,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_syntax.jpg","2048x2048-width":1174,"2048x2048-height":385,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_syntax-826x271.jpg","card_image-width":826,"card_image-height":271,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/enrich_syntax.jpg","wide_image-width":1174,"wide_image-height":385}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Next, I use the ArcGIS API for Python to convert the enriched feature class to a <a href=\"https:\/\/developers.arcgis.com\/python\/guide\/introduction-to-the-spatially-enabled-dataframe\/\"><strong>Spatially Enabled DataFrame (SeDF)<\/strong><\/a> using the <a href=\"https:\/\/developers.arcgis.com\/python\/guide\/part2-data-io-reading-data\/#read-in-local-gis-data\"><strong><em>.from_featureclass<\/em><\/strong><\/a> method.\u00a0 The SeDF is Esri\u2019s spatial version of a Pandas DataFrame, which allows for seamless data I\/O between ArcGIS and the Python data science ecosystem.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2713822,"id":2713822,"title":"sedf","filename":"sedf.jpg","filesize":115406,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/sedf.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/sedf-3","alt":"","author":"154341","description":"","caption":"","name":"sedf-3","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 23:24:10","modified":"2025-03-03 23:24:10","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1146,"height":617,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/sedf-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/sedf.jpg","medium-width":464,"medium-height":250,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/sedf.jpg","medium_large-width":768,"medium_large-height":413,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/sedf.jpg","large-width":1146,"large-height":617,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/sedf.jpg","1536x1536-width":1146,"1536x1536-height":617,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/sedf.jpg","2048x2048-width":1146,"2048x2048-height":617,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/sedf-826x445.jpg","card_image-width":826,"card_image-height":445,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/sedf.jpg","wide_image-width":1146,"wide_image-height":617}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Last, I joined the cleaned NHGIS data to the enriched SeDF, producing a final DataFrame of 2,164 census tracts with ~150 rows of data.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2713842,"id":2713842,"title":"tabular_spatial_join","filename":"tabular_spatial_join.jpg","filesize":113911,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tabular_spatial_join.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\/tabular_spatial_join","alt":"","author":"154341","description":"","caption":"","name":"tabular_spatial_join","status":"inherit","uploaded_to":2712852,"date":"2025-03-03 23:25:54","modified":"2025-03-03 23:25:54","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1179,"height":687,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tabular_spatial_join-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tabular_spatial_join.jpg","medium-width":448,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tabular_spatial_join.jpg","medium_large-width":768,"medium_large-height":448,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tabular_spatial_join.jpg","large-width":1179,"large-height":687,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tabular_spatial_join.jpg","1536x1536-width":1179,"1536x1536-height":687,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tabular_spatial_join.jpg","2048x2048-width":1179,"2048x2048-height":687,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tabular_spatial_join-798x465.jpg","card_image-width":798,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/tabular_spatial_join.jpg","wide_image-width":1179,"wide_image-height":687}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>In the <strong><a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-3-data-validation-and-data-engineering\">next blog<\/a><\/strong>, we&#8217;ll dive much deeper into this data to ensure that it has everything we need to complete our analysis.\u00a0 Onward!<\/p>\n"},{"acf_fc_layout":"sidebar","content":"<h2>Spatial data science in ArcGIS Pro Notebooks<\/h2>\n<p>Here are the links to all the blogs in the series:<\/p>\n<ul>\n<li><strong><a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks\">Part 1.<\/a><\/strong> Mapping gentrification in US Cities<\/li>\n<li><strong><a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\">Part 2.<\/a> <\/strong>Data fusion, wrangling, and preparation<\/li>\n<li><a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-3-data-validation-and-data-engineering\"><strong>Part 3.<\/strong><\/a> Data validation and data engineering<\/li>\n<li><strong><a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-4-creating-a-gentrification-index-using-principal-components-analysis-pca\">Part 4.<\/a> <\/strong>Creating a gentrification index using Principal Components Analysis (PCA)<\/li>\n<li>Part 5. (Coming soon!) Creating a gentrification index using Calculate Composite Index<\/li>\n<\/ul>\n","image_reference":false,"layout":"standard","image_reference_figure":"","snippet":"","spotlight_name":"","section_title":"","position":"Center","spotlight_image":false}],"related_articles":"","show_article_image":false,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/blog-2-card.png","wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/blog-2-wide.png"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Data fusion, wrangling, and preparation using ArcGIS Notebook<\/title>\n<meta name=\"description\" content=\"This is the second installment in a series of blog articles focused on using ArcGIS Notebooks to map gentrification in US cities.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Spatial data science using ArcGIS Notebooks Blog 2: Data fusion, wrangling, and preparation\" \/>\n<meta property=\"og:description\" content=\"This is the second installment in a series of blog articles focused on using ArcGIS Notebooks to map gentrification in US cities.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\"},\"author\":{\"name\":\"Nicholas Giner\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/2dc4741deea59d3274cfa775e52501b2\"},\"headline\":\"Spatial data science using ArcGIS Notebooks Blog 2: Data fusion, wrangling, and preparation\",\"datePublished\":\"2025-03-10T13:00:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\"},\"wordCount\":12,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"ArcGIS API for Python\",\"ArcGIS Notebooks\",\"Data Engineering\",\"python\",\"spatial data science\"],\"articleSection\":[\"Analytics\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\",\"name\":\"Data fusion, wrangling, and preparation using ArcGIS Notebook\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2025-03-10T13:00:43+00:00\",\"description\":\"This is the second installment in a series of blog articles focused on using ArcGIS Notebooks to map gentrification in US cities.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Spatial data science using ArcGIS Notebooks Blog 2: Data fusion, wrangling, and preparation\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"name\":\"ArcGIS Blog\",\"description\":\"Get insider info from Esri product teams\",\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\",\"name\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"width\":400,\"height\":400,\"caption\":\"Esri\"},\"image\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/esrigis\/\",\"https:\/\/x.com\/ESRI\",\"https:\/\/www.linkedin.com\/company\/5311\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/2dc4741deea59d3274cfa775e52501b2\",\"name\":\"Nicholas Giner\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/01\/headshot-e1610030307989-213x200.jpeg\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/01\/headshot-e1610030307989-213x200.jpeg\",\"caption\":\"Nicholas Giner\"},\"description\":\"Nick Giner is a Product Manager for Spatial Analysis and Data Science. Prior to joining Esri in 2014, he completed Bachelor\u2019s and PhD degrees in Geography from Penn State University and Clark University, respectively. In his spare time, he likes to play guitar, golf, cook, cut the grass, and read\/watch shows about history.\",\"sameAs\":[\"www.linkedin.com\/in\/nicholas-giner-0282966b\",\"https:\/\/x.com\/NickGiner\"],\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/nginer\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Data fusion, wrangling, and preparation using ArcGIS Notebook","description":"This is the second installment in a series of blog articles focused on using ArcGIS Notebooks to map gentrification in US cities.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation","og_locale":"en_US","og_type":"article","og_title":"Spatial data science using ArcGIS Notebooks Blog 2: Data fusion, wrangling, and preparation","og_description":"This is the second installment in a series of blog articles focused on using ArcGIS Notebooks to map gentrification in US cities.","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","twitter_card":"summary_large_image","twitter_site":"@ESRI","twitter_misc":{"Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation"},"author":{"name":"Nicholas Giner","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/2dc4741deea59d3274cfa775e52501b2"},"headline":"Spatial data science using ArcGIS Notebooks Blog 2: Data fusion, wrangling, and preparation","datePublished":"2025-03-10T13:00:43+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation"},"wordCount":12,"commentCount":1,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["ArcGIS API for Python","ArcGIS Notebooks","Data Engineering","python","spatial data science"],"articleSection":["Analytics"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation","name":"Data fusion, wrangling, and preparation using ArcGIS Notebook","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2025-03-10T13:00:43+00:00","description":"This is the second installment in a series of blog articles focused on using ArcGIS Notebooks to map gentrification in US cities.","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"Spatial data science using ArcGIS Notebooks Blog 2: Data fusion, wrangling, and preparation"}]},{"@type":"WebSite","@id":"https:\/\/www.esri.com\/arcgis-blog\/#website","url":"https:\/\/www.esri.com\/arcgis-blog\/","name":"ArcGIS Blog","description":"Get insider info from Esri product teams","publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization","name":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","width":400,"height":400,"caption":"Esri"},"image":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/esrigis\/","https:\/\/x.com\/ESRI","https:\/\/www.linkedin.com\/company\/5311\/"]},{"@type":"Person","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/2dc4741deea59d3274cfa775e52501b2","name":"Nicholas Giner","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/01\/headshot-e1610030307989-213x200.jpeg","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/01\/headshot-e1610030307989-213x200.jpeg","caption":"Nicholas Giner"},"description":"Nick Giner is a Product Manager for Spatial Analysis and Data Science. Prior to joining Esri in 2014, he completed Bachelor\u2019s and PhD degrees in Geography from Penn State University and Clark University, respectively. In his spare time, he likes to play guitar, golf, cook, cut the grass, and read\/watch shows about history.","sameAs":["www.linkedin.com\/in\/nicholas-giner-0282966b","https:\/\/x.com\/NickGiner"],"url":"https:\/\/www.esri.com\/arcgis-blog\/author\/nginer"}]}},"text_date":"March 10, 2025","author_name":"Multiple Authors","author_page":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-pro\/analytics\/spatial-data-science-using-arcgis-notebooks-blog-2-data-fusion-wrangling-and-preparation","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/blog-2-wide.png","primary_product":"ArcGIS Pro","tag_data":[{"term_id":387782,"name":"ArcGIS API for Python","slug":"arcgis-api-for-python","term_group":0,"term_taxonomy_id":387782,"taxonomy":"post_tag","description":"","parent":0,"count":44,"filter":"raw"},{"term_id":555752,"name":"ArcGIS Notebooks","slug":"arcgis-notebooks","term_group":0,"term_taxonomy_id":555752,"taxonomy":"post_tag","description":"","parent":0,"count":38,"filter":"raw"},{"term_id":760452,"name":"Data Engineering","slug":"data-engineering","term_group":0,"term_taxonomy_id":760452,"taxonomy":"post_tag","description":"","parent":0,"count":34,"filter":"raw"},{"term_id":24341,"name":"python","slug":"python","term_group":0,"term_taxonomy_id":24341,"taxonomy":"post_tag","description":"","parent":0,"count":171,"filter":"raw"},{"term_id":759592,"name":"spatial data science","slug":"spatial-data-science","term_group":0,"term_taxonomy_id":759592,"taxonomy":"post_tag","description":"","parent":0,"count":17,"filter":"raw"}],"category_data":[{"term_id":23341,"name":"Analytics","slug":"analytics","term_group":0,"term_taxonomy_id":23341,"taxonomy":"category","description":"","parent":0,"count":1325,"filter":"raw"}],"product_data":[{"term_id":36841,"name":"ArcGIS API for Python","slug":"api-python","term_group":0,"term_taxonomy_id":36841,"taxonomy":"product","description":"","parent":36601,"count":151,"filter":"raw"},{"term_id":36561,"name":"ArcGIS Pro","slug":"arcgis-pro","term_group":0,"term_taxonomy_id":36561,"taxonomy":"product","description":"","parent":0,"count":2035,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=arcgis-pro","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/2712852","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/users\/154341"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=2712852"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/2712852\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=2712852"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=2712852"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=2712852"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=2712852"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=2712852"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}