{"id":108,"date":"2023-06-01T06:33:45","date_gmt":"2023-06-01T05:33:45","guid":{"rendered":"https:\/\/zdebla.me\/?p=108"},"modified":"2023-06-07T21:00:19","modified_gmt":"2023-06-07T20:00:19","slug":"essip-vizualization-data-preparation","status":"publish","type":"post","link":"https:\/\/zdebla.me\/index.php\/2023\/06\/01\/essip-vizualization-data-preparation\/","title":{"rendered":"ESSIP vizualization &#8211; data preparation"},"content":{"rendered":"\n<p class=\"has-text-align-center has-vivid-cyan-blue-color has-text-color has-large-font-size\" style=\"font-style:normal;font-weight:600\"><strong>Deployment data sourcing, transformation and cleaning\u00a0<\/strong><\/p>\n\n\n\n<p>The souce of the data is <a href=\"https:\/\/www.atmmasterplan.eu\/depl\/essip_objectives\/map\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.atmmasterplan.eu\/depl\/essip_objectives\/map<\/a> . I\u202fcouldnt find a\u202fway to download a\u202fcomplete raw data for all the objectives for all the years of the ESSIP\/LSSIP process, so I\u202fdownloaded manually data for the last 2 years for 20 objectives.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"186\" src=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-1024x186.png\" alt=\"\" class=\"wp-image-109\" srcset=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-1024x186.png 1024w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-300x54.png 300w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-768x139.png 768w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-1536x278.png 1536w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image.png 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"404\" height=\"227\" src=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-2.png\" alt=\"\" class=\"wp-image-111\" srcset=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-2.png 404w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-2-300x169.png 300w\" sizes=\"auto, (max-width: 404px) 100vw, 404px\" \/><\/figure>\n\n\n\n<p>40 excel files were saved into a\u202ffolder.&nbsp;<\/p>\n\n\n\n<p>Using the powerful Power Query \u2013 <em>Get data \u2013 From file \u2013 From folder \u2013 Tranform data &#8211; Combine files&nbsp;&nbsp;<\/em><\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-7-1024x658.png\" alt=\"\" class=\"wp-image-116\" width=\"716\" height=\"460\" srcset=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-7-1024x658.png 1024w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-7-300x193.png 300w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-7-768x494.png 768w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-7.png 1269w\" sizes=\"auto, (max-width: 716px) 100vw, 716px\" \/><\/figure>\n\n\n\n<p>The souce excel files combined some introductory columns (10). The best way to remove them was to filter out NULL values in the column 2.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"381\" height=\"311\" src=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-8.png\" alt=\"\" class=\"wp-image-117\" srcset=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-8.png 381w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-8-300x245.png 300w\" sizes=\"auto, (max-width: 381px) 100vw, 381px\" \/><\/figure>\n\n\n\n<p>Data cleaning \u2013 removing the first column and some additional ones, using the first row as headers. Filtering out some of the headers remaining from combining the worksheets.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"130\" src=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-6-1024x130.png\" alt=\"\" class=\"wp-image-115\" srcset=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-6-1024x130.png 1024w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-6-300x38.png 300w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-6-768x97.png 768w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-6.png 1319w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Since I am keeping the data for 2 years \u2013 2021 and 2022, I need the data for the edition year. These come from the first column, which is based on the imported excel file name, like \u201ceATMPortal_Maptool_AOM13.1_Edition2021_2023-MM-DD.xls\u201d. To extract the Edition year, I used the combination of <em>=MID<\/em> and <em>=FIND<\/em> formulas, looking for the information after the third underscore and extracting 11 characters, like this:&nbsp;<\/p>\n\n\n\n<p class=\"has-text-align-center has-small-font-size\"><strong>=MID(A2,FIND(&#8220;_&#8221;,A2,FIND(&#8220;_&#8221;,A2,FIND(&#8220;_&#8221;,A2)+1)+1)+1,11)&nbsp;<\/strong><\/p>\n\n\n\n<p>Data cleaned \u2013 <strong>1760 rows remained<\/strong> \u2013 20 objectives \u2013 44 States \u2013 2 years.&nbsp;&nbsp;<\/p>\n\n\n\n<p class=\"has-text-align-center has-vivid-cyan-blue-color has-text-color has-large-font-size\"><strong>Objectives additional information \u2013 stakeholders, SESAR solutions, ICAO Block Modules\u00a0<\/strong><\/p>\n\n\n\n<p>Downloading the data from <a href=\"https:\/\/www.atmmasterplan.eu\/downloads\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.atmmasterplan.eu\/downloads<\/a> &#8211; Implementation Objectives excel file at the bottom.&nbsp;&nbsp;&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"851\" height=\"270\" src=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-9.png\" alt=\"\" class=\"wp-image-118\" srcset=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-9.png 851w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-9-300x95.png 300w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-9-768x244.png 768w\" sizes=\"auto, (max-width: 851px) 100vw, 851px\" \/><\/figure>\n\n\n\n<p>Removing some of the sheets which will not be used.&nbsp;<\/p>\n\n\n\n<p>Converting the first column to just leave out just the objective name, using the inbuilt <em>Data<\/em> \u2013 <em>Text to columns <\/em>function, using the \u201e-\u201e delimiter. One could also use the combination of the combination of =LEFT and =SEARCH, but it is not necessary since the <em>Text to columns <\/em>function works great.&nbsp;&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"602\" height=\"486\" src=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-4.png\" alt=\"\" class=\"wp-image-113\" srcset=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-4.png 602w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-4-300x242.png 300w\" sizes=\"auto, (max-width: 602px) 100vw, 602px\" \/><\/figure>\n\n\n\n<p>Moving the remaing 3 sheets into the deployment data worksheet.&nbsp;&nbsp;<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\"><\/ol>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"597\" height=\"464\" src=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-5.png\" alt=\"\" class=\"wp-image-114\" srcset=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-5.png 597w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/image-5-300x233.png 300w\" sizes=\"auto, (max-width: 597px) 100vw, 597px\" \/><\/figure>\n\n\n\n<p class=\"has-text-align-center has-vivid-cyan-blue-color has-text-color has-large-font-size\"><strong>Data modeling<\/strong><\/p>\n\n\n\n<p>The 3 reports, showing additional information per each objectives ( stakeholders, SESAR solutions, ICAO Block Modules) were modeled in Tableau<em> Data source<\/em> tab, creating relationship between the objectives names (abbreviations).<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"568\" height=\"246\" src=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/obrazok.png\" alt=\"\" class=\"wp-image-119\" srcset=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/obrazok.png 568w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/obrazok-300x130.png 300w\" sizes=\"auto, (max-width: 568px) 100vw, 568px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"407\" height=\"95\" src=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/obrazok-1.png\" alt=\"\" class=\"wp-image-120\" srcset=\"https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/obrazok-1.png 407w, https:\/\/zdebla.me\/wp-content\/uploads\/2023\/06\/obrazok-1-300x70.png 300w\" sizes=\"auto, (max-width: 407px) 100vw, 407px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Deployment data sourcing, transformation and cleaning\u00a0 The souce of the data is https:\/\/www.atmmasterplan.eu\/depl\/essip_objectives\/map . I\u202fcouldnt find a\u202fway to download a\u202fcomplete raw data for all the objectives for all the years of the ESSIP\/LSSIP process, so I\u202fdownloaded manually data for the last 2 years for 20 objectives.&nbsp; 40 excel files were saved into a\u202ffolder.&nbsp; Using the [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,12],"tags":[],"class_list":["post-108","post","type-post","status-publish","format-standard","hentry","category-articles","category-data-preparation"],"_links":{"self":[{"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/posts\/108","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/comments?post=108"}],"version-history":[{"count":2,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/posts\/108\/revisions"}],"predecessor-version":[{"id":176,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/posts\/108\/revisions\/176"}],"wp:attachment":[{"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/media?parent=108"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/categories?post=108"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/tags?post=108"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}