{"id":1884632,"date":"2023-03-23T08:39:09","date_gmt":"2023-03-23T15:39:09","guid":{"rendered":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=1884632"},"modified":"2024-03-19T16:53:49","modified_gmt":"2024-03-19T23:53:49","slug":"dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine","title":{"rendered":"Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine"},"author":335752,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[23341],"tags":[765912,25351,769642,761242],"industry":[],"product":[765842],"class_list":["post-1884632","blog","type-blog","status-publish","format-standard","hentry","category-analytics","tag-arcgis-geoanalytics-engine","tag-big-data","tag-dev-summit-2023-demo","tag-spatial-analysis-and-data-science","product-geoanalytics-engine"],"acf":{"authors":[{"ID":335752,"user_firstname":"Chunxue","user_lastname":"Xu","nickname":"cxu","user_nicename":"cxu","display_name":"Chunxue Xu","user_email":"cxu@esri.com","user_url":"","user_registered":"2023-03-23 00:32:34","user_description":"Chunxue is a product engineer on the GeoAnalytics team.","user_avatar":"<img alt='' src='https:\/\/secure.gravatar.com\/avatar\/371f001bd4fb08f36705f65068eccbf8d97be2e9427ae59e9c39ccb205af6f94?s=96&#038;d=blank&#038;r=g' srcset='https:\/\/secure.gravatar.com\/avatar\/371f001bd4fb08f36705f65068eccbf8d97be2e9427ae59e9c39ccb205af6f94?s=192&#038;d=blank&#038;r=g 2x' class='avatar avatar-96 photo' height='96' width='96' loading='lazy' decoding='async'\/>"},{"ID":6831,"user_firstname":"Noah","user_lastname":"Slocum","nickname":"noahmead","user_nicename":"noahmead","display_name":"Noah Slocum","user_email":"NSlocum@esri.com","user_url":"","user_registered":"2018-03-02 00:18:50","user_description":"I am a product engineer on the GeoAnalytics team at Esri in Redlands, CA","user_avatar":"<img alt='' src='https:\/\/secure.gravatar.com\/avatar\/68b5806fd9e9bc28cde7937731930d4ccd3f5614bc35be696fed904ff1e6677f?s=96&#038;d=blank&#038;r=g' srcset='https:\/\/secure.gravatar.com\/avatar\/68b5806fd9e9bc28cde7937731930d4ccd3f5614bc35be696fed904ff1e6677f?s=192&#038;d=blank&#038;r=g 2x' class='avatar avatar-96 photo' height='96' width='96' loading='lazy' decoding='async'\/>"}],"short_description":"Learn how you can perform big data analysis using ArcGIS GeoAnalytics Engine.","flexible_content":[{"acf_fc_layout":"content","content":"<p><span class=\"TextRun SCXW216721033 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><a href=\"https:\/\/www.esri.com\/en-us\/arcgis\/products\/arcgis-geoanalytics-engine\/overview?aduc=PublicRelations&amp;sf_id=7015x000001RhGUAA0&amp;aduco=Dev_Summit2023GAEngine&amp;aduca=MIArcGISGeoAnalyticsEngine&amp;adum=Blog&amp;utm_source=PublicRelations\"><span class=\"NormalTextRun SCXW216721033 BCX9\">ArcGIS <\/span><span class=\"NormalTextRun SCXW216721033 BCX9\">GeoAnalytics<\/span><span class=\"NormalTextRun SCXW216721033 BCX9\"> Engine<\/span><\/a><span class=\"NormalTextRun SCXW216721033 BCX9\">\u00a0extends<\/span><span class=\"NormalTextRun SCXW216721033 BCX9\"> Apache Spark <\/span><span class=\"NormalTextRun SCXW216721033 BCX9\">with<\/span><span class=\"NormalTextRun SCXW216721033 BCX9\"> a collection of <\/span><span class=\"NormalTextRun SCXW216721033 BCX9\">over 140 <\/span><span class=\"NormalTextRun SCXW216721033 BCX9\">spatial SQL functions and spatial analysis tools. <\/span><span class=\"NormalTextRun SCXW216721033 BCX9\">It is<\/span><span class=\"NormalTextRun SCXW216721033 BCX9\"> a<\/span> <span class=\"NormalTextRun SCXW216721033 BCX9\">powerful <\/span><span class=\"NormalTextRun SCXW216721033 BCX9\">python<\/span> <span class=\"NormalTextRun SCXW216721033 BCX9\">library<\/span><span class=\"NormalTextRun SCXW216721033 BCX9\"> t<\/span><span class=\"NormalTextRun SCXW216721033 BCX9\">hat <\/span><span class=\"NormalTextRun SCXW216721033 BCX9\">allow<\/span><span class=\"NormalTextRun SCXW216721033 BCX9\">s<\/span><span class=\"NormalTextRun SCXW216721033 BCX9\"> you to <\/span><span class=\"NormalTextRun SCXW216721033 BCX9\">carry out your <a href=\"https:\/\/www.esri.com\/en-us\/capabilities\/spatial-analytics-data-science\/overview\">spatial analysis<\/a> workflows within your Cloud platform<\/span><\/span><span class=\"TrackChangeTextDeletionMarker TrackedChange SCXW216721033 BCX9\"><span class=\"TextRun SCXW216721033 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun TrackChangeTextDeletion SCXW216721033 BCX9\">s<\/span><\/span><\/span><span class=\"TextRun SCXW216721033 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW216721033 BCX9\"> or on-premises<\/span><span class=\"NormalTextRun SCXW216721033 BCX9\"> Spark<\/span><span class=\"NormalTextRun SCXW216721033 BCX9\"> infrastructure.<\/span><\/span><span class=\"EOP SCXW216721033 BCX9\" data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span class=\"TextRun SCXW173651832 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun CommentStart SCXW173651832 BCX9\">In the demo for this year\u2019s <\/span><\/span><span class=\"TextRun Highlight SCXW173651832 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW173651832 BCX9\">Developer Summit <\/span><span class=\"NormalTextRun SCXW173651832 BCX9\">p<\/span><span class=\"NormalTextRun SCXW173651832 BCX9\">lenary<\/span><span class=\"NormalTextRun SCXW173651832 BCX9\">, we <\/span><span class=\"NormalTextRun SCXW173651832 BCX9\">leverage<\/span> <span class=\"NormalTextRun SCXW173651832 BCX9\">GeoAnalytics<\/span><span class=\"NormalTextRun SCXW173651832 BCX9\"> Engine within an \u202f<a href=\"https:\/\/developers.arcgis.com\/geoanalytics\/install\/databricks\/azure\/\">Azure Databricks<\/a><\/span><span class=\"NormalTextRun SCXW173651832 BCX9\">\u00a0<\/span><\/span><span class=\"TextRun Highlight SCXW173651832 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW173651832 BCX9\">hosted<\/span> <\/span><span class=\"TrackChangeTextInsertion TrackedChange SCXW173651832 BCX9\"><span class=\"TextRun SCXW173651832 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SpellingErrorV2Themed SCXW173651832 BCX9\">PySpark<\/span><\/span><\/span> <span class=\"TextRun Highlight SCXW173651832 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW173651832 BCX9\">notebook to perform custom big data analysis.<\/span><\/span><span class=\"EOP SCXW173651832 BCX9\" data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n"},{"acf_fc_layout":"kaltura","video_id":"1_ajqnojd3","time":true,"start":"1726","stop":"1992"},{"acf_fc_layout":"content","content":"<p><span class=\"TextRun Highlight SCXW47761287 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW47761287 BCX9\">This demo <\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">identif<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">ies<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\"> potential sites for new stores<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\"> by<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\"> investigat<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">ing<\/span> <span class=\"NormalTextRun SCXW47761287 BCX9\">changes in consumer spending at brick-and-mortar stores throughout the United States<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">.<\/span> <\/span><span class=\"TextRun SCXW47761287 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW47761287 BCX9\">We <\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">used <\/span><span class=\"NormalTextRun CommentStart CommentHighlightPipeRest CommentHighlightRest SCXW47761287 BCX9\">the <\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">Spend datase<\/span><span class=\"NormalTextRun CommentHighlightPipeRest SCXW47761287 BCX9\">t<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\"> from Esri partner <\/span><a href=\"https:\/\/www.safegraph.com\/)\"><span class=\"NormalTextRun SpellingErrorV2Themed SCXW47761287 BCX9\">SafeGraph<\/span><\/a><span class=\"NormalTextRun SCXW47761287 BCX9\">. <\/span><a href=\"https:\/\/www.safegraph.com\/products\/spend\"><span class=\"NormalTextRun CommentStart SpellingErrorV2Themed CommentHighlightPipeRest CommentHighlightRest SCXW47761287 BCX9\">SafeGraph<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\"> Spend<\/span><\/a> <\/span><span class=\"TextRun SCXW47761287 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">i<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">s<\/span> <span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">a <\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">points of interest (POIs)<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\"> dataset<\/span> <span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">provid<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">ing<\/span><\/span><span class=\"TextRun Highlight SCXW47761287 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\"> anonymized, permissioned, and aggregated <\/span><\/span><span class=\"TextRun SCXW47761287 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">credit and debit <\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">transaction <\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">information<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">. It<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\"> includes <\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">date, time, location,<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\"> details of businesses across the United States, as well as consumer spe<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">n<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">ding metrics <\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">for online and in-person<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\"> transactions<\/span><span class=\"NormalTextRun CommentHighlightRest SCXW47761287 BCX9\">.<\/span> <span class=\"NormalTextRun SCXW47761287 BCX9\">By<\/span><\/span><span class=\"TextRun Highlight SCXW47761287 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW47761287 BCX9\"> joining <\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">spending data<\/span> <span class=\"NormalTextRun SCXW47761287 BCX9\">to<\/span> <\/span><span class=\"TextRun SCXW47761287 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW47761287 BCX9\">Census Block groups<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">, we can <\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">gain<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\"> a<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">n <\/span><\/span><span class=\"TextRun Highlight SCXW47761287 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW47761287 BCX9\">understanding of<\/span> <span class=\"NormalTextRun SCXW47761287 BCX9\">how <\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">consumer spending behavior<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">s change<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\"> in different region<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">s<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\"> across <\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">the United States<\/span><span class=\"NormalTextRun SCXW47761287 BCX9\">.<\/span><\/span><span class=\"EOP SCXW47761287 BCX9\" data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\">Prepare data and workspace<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">We used the following workflow to prepare the data and workspace:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Create a Spark cluster in a cloud environment. For our demo we used Azure Databricks.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Open a PySpark notebook.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Import the geoanalytics and pyspark modules.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Authorize GeoAnalytics Engine.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Load the input Spend dataset into a PySpark DataFrame. We loaded our parquet dataset from Azure blob storage.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Set location and time to enable the Spend dataset spatially and temporally.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">The Spend dataset used in this demo has 49 million spending records from January 1<\/span><span data-contrast=\"auto\">st<\/span><span data-contrast=\"auto\">, 2019 to January 1<\/span><span data-contrast=\"auto\">st<\/span><span data-contrast=\"auto\">, 2023. We can visualize the spatial distribution of the spending records by aggregating the data into bins.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1884642,"id":1884642,"title":"Figure 1","filename":"fig1.png","filesize":351282,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig1.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine\/fig1-7","alt":"","author":"335752","description":"","caption":"Figure 1 Spatial distribution of the SafeGraph spending records across the Continental US ","name":"fig1-7","status":"inherit","uploaded_to":1884632,"date":"2023-03-23 02:09:02","modified":"2023-03-23 02:11:05","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":683,"height":429,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig1-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig1.png","medium-width":416,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig1.png","medium_large-width":683,"medium_large-height":429,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig1.png","large-width":683,"large-height":429,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig1.png","1536x1536-width":683,"1536x1536-height":429,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig1.png","2048x2048-width":683,"2048x2048-height":429,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig1.png","card_image-width":683,"card_image-height":429,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig1.png","wide_image-width":683,"wide_image-height":429}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p><b><span data-contrast=\"auto\">Analyzing the change in in-person spending with US census block groups\u00a0<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">To analyze the change in in-person spending at the block group level, we load the US census block group dataset<\/span><span data-contrast=\"auto\">\u00a0from the Living Atlas into a PySpark DataFrame and then aggregate the spending records into block groups by calculating the total amount of in-person spending per year from 2019 to 2022. The table is pivoted for in-person spending in 2019 and 2022, and then we calculate the percent change in spending from 2019 to 2022.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n"},{"acf_fc_layout":"content","content":"<pre><code class=\"python\"># Aggregate the spending records to US census block groups\r\nsg_spend_blocks = AggregatePoints() \\\r\n                  .setPolygons(block_groups) \\ \r\n                  .setTimeStep(interval_duration=1, interval_unit=\"years\") \\ \r\n                  .addSummaryField(\"in_person_spend\", \"Sum\", alias=\"sum_inperson_spend\") \\ \r\n                  .run(sg_spend)\r\n\r\n# Calculate the percent change in in-person spending from 2019 to 2022\r\nspend_blocks_pivoted = sg_spend_blocks.filter(F.col(\"COUNT\") &gt; 10).groupBy(blocks_fields) \\ \r\n                           .pivot(\"step_start\").agg(F.first(\"sum_inperson_spend\").alias(\"inperson\")) \\ \r\n                           .select(blocks_fields + [\"2019-01-01 00:00:00\", \"2022-01-01 00:00:00\"]) \\ \r\n                           .withColumn(\"inperson_pct_19_22\", F.round((F.col(\"inperson_spend_2022\") - F.col(\"2022-01-01 00:00:00\"))\/F.col(\"2019-01-01 00:00:00\") *100, 2)) \r\n<\/code><\/pre>\n"},{"acf_fc_layout":"content","content":"<p><span class=\"TextRun SCXW159795354 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW159795354 BCX9\">We<\/span> <span class=\"NormalTextRun SCXW159795354 BCX9\">next<\/span> <span class=\"NormalTextRun SCXW159795354 BCX9\">remove<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> potential<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> outliers<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">. To <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">find<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> the outliers, we <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">calculate<\/span> <span class=\"NormalTextRun SCXW159795354 BCX9\">the<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> interquartile range <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">(IQR)<\/span> <span class=\"NormalTextRun SCXW159795354 BCX9\">to<\/span> <span class=\"NormalTextRun SCXW159795354 BCX9\">find<\/span> <span class=\"NormalTextRun SCXW159795354 BCX9\">the difference between <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">the <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">third<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> and <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">first<\/span> <span class=\"NormalTextRun SCXW159795354 BCX9\">quartiles<\/span> <span class=\"NormalTextRun SCXW159795354 BCX9\">(Q3<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> and Q1<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">) of<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> the dataset<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">. Any spending record<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> with change<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> that fa<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">l<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">ls below the lower bound (Q1 \u2013 1.5IQR) or <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">a<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">bove the upper bound (Q3 + 1.5IQR) is considered an outlier and removed from the spending dataset. Then w<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">e v<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">isualize the spatial pattern of the<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> in-person<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> spending <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">change<\/span> <span class=\"NormalTextRun SCXW159795354 BCX9\">at <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">the <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">census <\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">block<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> group<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\"> level<\/span><span class=\"NormalTextRun SCXW159795354 BCX9\">.<\/span><\/span><span class=\"EOP SCXW159795354 BCX9\" data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1884792,"id":1884792,"title":"Figure 2","filename":"fig2.png","filesize":300712,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig2.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine\/fig2-10","alt":"","author":"335752","description":"","caption":"Figure 2 Spatial pattern for the percent change in in-person spending at census block group level","name":"fig2-10","status":"inherit","uploaded_to":1884632,"date":"2023-03-23 03:02:45","modified":"2023-03-23 03:03:18","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":684,"height":429,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig2-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig2.png","medium-width":416,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig2.png","medium_large-width":684,"medium_large-height":429,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig2.png","large-width":684,"large-height":429,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig2.png","1536x1536-width":684,"1536x1536-height":429,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig2.png","2048x2048-width":684,"2048x2048-height":429,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig2.png","card_image-width":684,"card_image-height":429,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig2.png","wide_image-width":684,"wide_image-height":429}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p><span class=\"TextRun SCXW146940458 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW146940458 BCX9\">In this demo, we deployed the cluster with 10 workers running in parallel, which <\/span><span class=\"NormalTextRun SCXW146940458 BCX9\">has<\/span><span class=\"NormalTextRun SCXW146940458 BCX9\"> 352 cores and 2816GB executor memory in total. It takes about 30 seconds to join the 49 million spending <\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange SCXW146940458 BCX9\"><span class=\"TextRun SCXW146940458 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW146940458 BCX9\">records<\/span><\/span><\/span><span class=\"TextRun SCXW146940458 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW146940458 BCX9\"> within <\/span><span class=\"NormalTextRun SCXW146940458 BCX9\">240,000<\/span><span class=\"NormalTextRun SCXW146940458 BCX9\"> block group polygons<\/span><span class=\"NormalTextRun SCXW146940458 BCX9\">. <\/span><span class=\"NormalTextRun SCXW146940458 BCX9\">We also tested with more data, to <\/span><span class=\"NormalTextRun SCXW146940458 BCX9\">ensure this scaled. We <\/span><span class=\"NormalTextRun SCXW146940458 BCX9\">simulated<\/span><span class=\"NormalTextRun SCXW146940458 BCX9\"> 1.5 billion<\/span><span class=\"NormalTextRun SCXW146940458 BCX9\"> spending records. <\/span><span class=\"NormalTextRun SCXW146940458 BCX9\">Joining 1.5 billion spending records with 240,000 block groups completed on the same environment <\/span><span class=\"NormalTextRun SCXW146940458 BCX9\">within 6 minutes.<\/span><\/span><span class=\"EOP SCXW146940458 BCX9\" data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\">Finding sites for new stores using the Find Similar Locations tool<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">As shown in Figure 2, in-person spending data is only available for some census block groups, but how can we evaluate every census block group to select suitable sites for a new store?\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">To answer that, we use the <a href=\"https:\/\/developers.arcgis.com\/geoanalytics\/tools\/find-similar-locations\/\">Find Similar Locations<\/a> tool to find census block groups most similar to the block groups with the largest increase in in-person spending since 2020. The Find Similar locations tool requires a reference DataFrame, which represents what we want to match to. We create this by selecting ten top-performing census block groups, which are the 10 block groups with the largest increase in in-person spending after removing outliers.\u00a0 Second, we prepare both the reference and search DataFrames by choosing 40 economic and demographic variables relating to population, household, industry and income (e.g., Population Density, Average Household Size, Wholesale Trade, and Median Disposable Income) from the census block group feature service layer. To look for locations in the search DataFrame with similar demographics to the ten reference records, we run the Find Similar Locations tool to calculate cosine similarity (ranges from 1.0 for perfect similarity to -1.0 for perfect dissimilarity) among the census block groups. Figure 3 shows an example map of the potential block groups <span class=\"ui-provider wp b c d e f g h i j k l m n o p q r s t u v w x y z ab ac ae af ag ah ai aj ak\" dir=\"ltr\">near Indianapolis, Indiana<\/span>\u00a0with cosine similarity index larger than 0.8.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n"},{"acf_fc_layout":"content","content":"<pre><code class=\"python\"># Select the 10 block groups with the highest averaged increase in spending from 2019 to 2022\u00a0\r\ntop10_blocks = spend_blocks_cleaned.orderBy(F.col(\"inperson_pct_19_22\").desc()).limit(10)\u00a0\r\n\r\n# Prepare the reference and search dataframes for similarity search\u00a0\r\nblocks_df = block_groups.select([F.col(item) for item in blocks_fields])\u00a0\r\ntop10_df = blocks_df.join(top10_blocks, [\"ID\"], \"inner\").select(blocks_df[\"*\"])\u00a0\r\n\r\n# Run Find Similar Locations tool for site selection, and get the similarity score\u00a0\r\nfsl_blocks = FindSimilarLocations() \\\u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .setAnalysisFields(*analysis_fields) \\\u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .setMostOrLeastSimilar(most_or_least_similar=\"MostSimilar\") \\\u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .setMatchMethod(match_method=\"AttributeProfiles\") \\\u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .setNumberOfResults(number_of_results=search_df.count()) \\\u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .setAppendFields(\"ObjectID\", \"Shape\", \"ID\", \"NAME\", \"ST_ABBREV\", \"STATE_NAME\") \\\u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .run(reference_dataframe= top10_df, search_dataframe= blocks_df)\r\n<\/code><\/pre>\n"},{"acf_fc_layout":"image","image":{"ID":1884812,"id":1884812,"title":"Figure3","filename":"fig3.png","filesize":128098,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig3.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine\/fig3-9","alt":"","author":"335752","description":"","caption":"Figure 3 Block group samples most similar to top-performing block groups in Indiana region","name":"fig3-9","status":"inherit","uploaded_to":1884632,"date":"2023-03-23 03:07:22","modified":"2023-03-23 03:07:41","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":684,"height":496,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig3-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig3.png","medium-width":360,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig3.png","medium_large-width":684,"medium_large-height":496,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig3.png","large-width":684,"large-height":496,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig3.png","1536x1536-width":684,"1536x1536-height":496,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig3.png","2048x2048-width":684,"2048x2048-height":496,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig3-641x465.png","card_image-width":641,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/fig3.png","wide_image-width":684,"wide_image-height":496}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p><b><span data-contrast=\"auto\">Conclusion<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">This demo showcases the power and versatility of the ArcGIS GeoAnalytics Engine for spatial analysis. By leveraging the SafeGraph Spend dataset and the US census block group dataset, we were able to gain insights into in-person spending patterns and identify potential sites for new stores using the Find Similar Locations tool. With the ability to process large amounts of spatial data quickly and efficiently, GeoAnalytics Engine can help businesses and organizations looking to make data-driven decisions. Refer to this <\/span><a href=\"https:\/\/arcg.is\/ai9Ky\"><span data-contrast=\"auto\">PySpark<\/span><span data-contrast=\"auto\"> Notebook<\/span><\/a><span data-contrast=\"auto\">\u00a0for a detailed reference of the demo shown above. <\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span class=\"TextRun SCXW213244009 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW213244009 BCX9\">T<\/span><span class=\"NormalTextRun SCXW213244009 BCX9\">o learn more about <\/span><a href=\"https:\/\/www.esri.com\/en-us\/arcgis\/products\/arcgis-geoanalytics-engine\/overview?aduc=PublicRelations&amp;sf_id=7015x000001RhGUAA0&amp;aduco=Dev_Summit2023GAEngine&amp;aduca=MIArcGISGeoAnalyticsEngine&amp;adum=Blog&amp;utm_source=PublicRelations\"><span class=\"NormalTextRun SCXW213244009 BCX9\">GeoAnalytics<\/span><span class=\"NormalTextRun SCXW213244009 BCX9\"> Engine<\/span><\/a><span class=\"NormalTextRun SCXW213244009 BCX9\">,<\/span><span class=\"NormalTextRun SCXW213244009 BCX9\"> visit <\/span><span class=\"NormalTextRun SCXW213244009 BCX9\">the <\/span><span class=\"NormalTextRun SCXW213244009 BCX9\">GeoAnalytics<\/span><span class=\"NormalTextRun SCXW213244009 BCX9\"> Engine <\/span><a href=\"https:\/\/developers.arcgis.com\/geoanalytics\/\"><span class=\"NormalTextRun SCXW213244009 BCX9\">Guide<\/span><\/a><\/span><span class=\"TextRun SCXW213244009 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW213244009 BCX9\">\u00a0and <a href=\"https:\/\/developers.arcgis.com\/geoanalytics\/api-reference\/index.html\">API reference<\/a><\/span><\/span><span class=\"TextRun SCXW213244009 BCX9\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW213244009 BCX9\">. <\/span><span class=\"NormalTextRun SCXW213244009 BCX9\">If you have any questions, please email us at geoanalytics-pes@esri.com.<\/span><\/span><span class=\"EOP SCXW213244009 BCX9\" data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n"}],"related_articles":"","card_image":false,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/banner_blog.jpg"},"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>Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine<\/title>\n<meta name=\"description\" content=\"Check this demo to learn how to access over 140 spatial functions and tools and perform big data analysis using ArcGIS GeoAnalytics Engine.\" \/>\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\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine\" \/>\n<meta property=\"og:description\" content=\"Check this demo to learn how to access over 140 spatial functions and tools and perform big data analysis using ArcGIS GeoAnalytics Engine.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-19T23:53:49+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\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\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine\"},\"author\":{\"name\":\"Chunxue Xu\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/9d1bf238eed7b4aff9d836986339969b\"},\"headline\":\"Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine\",\"datePublished\":\"2023-03-23T15:39:09+00:00\",\"dateModified\":\"2024-03-19T23:53:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine\"},\"wordCount\":8,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"ArcGIS GeoAnalytics Engine\",\"Big Data\",\"Dev Summit 2023 demo\",\"Spatial Analysis and Data Science\"],\"articleSection\":[\"Analytics\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine\",\"name\":\"Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2023-03-23T15:39:09+00:00\",\"dateModified\":\"2024-03-19T23:53:49+00:00\",\"description\":\"Check this demo to learn how to access over 140 spatial functions and tools and perform big data analysis using ArcGIS GeoAnalytics Engine.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine\"}]},{\"@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\/9d1bf238eed7b4aff9d836986339969b\",\"name\":\"Chunxue Xu\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/371f001bd4fb08f36705f65068eccbf8d97be2e9427ae59e9c39ccb205af6f94?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/371f001bd4fb08f36705f65068eccbf8d97be2e9427ae59e9c39ccb205af6f94?s=96&d=blank&r=g\",\"caption\":\"Chunxue Xu\"},\"description\":\"Chunxue is a product engineer on the GeoAnalytics team.\",\"url\":\"\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine","description":"Check this demo to learn how to access over 140 spatial functions and tools and perform big data analysis using ArcGIS GeoAnalytics Engine.","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\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine","og_locale":"en_US","og_type":"article","og_title":"Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine","og_description":"Check this demo to learn how to access over 140 spatial functions and tools and perform big data analysis using ArcGIS GeoAnalytics Engine.","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2024-03-19T23:53:49+00:00","twitter_card":"summary_large_image","twitter_site":"@ESRI","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine"},"author":{"name":"Chunxue Xu","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/9d1bf238eed7b4aff9d836986339969b"},"headline":"Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine","datePublished":"2023-03-23T15:39:09+00:00","dateModified":"2024-03-19T23:53:49+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine"},"wordCount":8,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["ArcGIS GeoAnalytics Engine","Big Data","Dev Summit 2023 demo","Spatial Analysis and Data Science"],"articleSection":["Analytics"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine","name":"Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2023-03-23T15:39:09+00:00","dateModified":"2024-03-19T23:53:49+00:00","description":"Check this demo to learn how to access over 140 spatial functions and tools and perform big data analysis using ArcGIS GeoAnalytics Engine.","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"Dev Summit 2023: In-person spending analysis with GeoAnalytics Engine"}]},{"@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\/9d1bf238eed7b4aff9d836986339969b","name":"Chunxue Xu","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/371f001bd4fb08f36705f65068eccbf8d97be2e9427ae59e9c39ccb205af6f94?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/371f001bd4fb08f36705f65068eccbf8d97be2e9427ae59e9c39ccb205af6f94?s=96&d=blank&r=g","caption":"Chunxue Xu"},"description":"Chunxue is a product engineer on the GeoAnalytics team.","url":""}]}},"text_date":"March 23, 2023","author_name":"Multiple Authors","author_page":"https:\/\/www.esri.com\/arcgis-blog\/products\/geoanalytics-engine\/analytics\/dev-summit-2023-in-person-spending-analysis-with-geoanalytics-engine","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/03\/banner_blog.jpg","primary_product":"ArcGIS GeoAnalytics Engine","tag_data":[{"term_id":765912,"name":"ArcGIS GeoAnalytics Engine","slug":"arcgis-geoanalytics-engine","term_group":0,"term_taxonomy_id":765912,"taxonomy":"post_tag","description":"","parent":0,"count":7,"filter":"raw"},{"term_id":25351,"name":"Big Data","slug":"big-data","term_group":0,"term_taxonomy_id":25351,"taxonomy":"post_tag","description":"","parent":0,"count":36,"filter":"raw"},{"term_id":769642,"name":"Dev Summit 2023 demo","slug":"dev-summit-2023-demo","term_group":0,"term_taxonomy_id":769642,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":761242,"name":"Spatial Analysis and Data Science","slug":"spatial-analysis-and-data-science","term_group":0,"term_taxonomy_id":761242,"taxonomy":"post_tag","description":"","parent":0,"count":15,"filter":"raw"}],"category_data":[{"term_id":23341,"name":"Analytics","slug":"analytics","term_group":0,"term_taxonomy_id":23341,"taxonomy":"category","description":"","parent":0,"count":1333,"filter":"raw"}],"product_data":[{"term_id":765842,"name":"ArcGIS GeoAnalytics Engine","slug":"geoanalytics-engine","term_group":0,"term_taxonomy_id":765842,"taxonomy":"product","description":"","parent":36601,"count":23,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=geoanalytics-engine","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/1884632","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\/335752"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=1884632"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/1884632\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=1884632"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=1884632"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=1884632"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=1884632"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=1884632"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}