<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Technical &#8211; People Decode</title>
	<atom:link href="https://peopledecode.com/category/technical/feed/" rel="self" type="application/rss+xml" />
	<link>https://peopledecode.com</link>
	<description>Strategic Staffing &#38; Training</description>
	<lastBuildDate>Mon, 14 Mar 2022 16:54:46 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>

<image>
	<url>https://peopledecode.com/wp-content/uploads/2022/04/cropped-Favicon-32x32.png</url>
	<title>Technical &#8211; People Decode</title>
	<link>https://peopledecode.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>The concept of Fuzzy matching in Python</title>
		<link>https://peopledecode.com/the-concept-of-fuzzy-matching-in-python/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-concept-of-fuzzy-matching-in-python</link>
					<comments>https://peopledecode.com/the-concept-of-fuzzy-matching-in-python/#respond</comments>
		
		<dc:creator><![CDATA[master]]></dc:creator>
		<pubDate>Tue, 08 Mar 2022 09:44:47 +0000</pubDate>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://peopledecode.com/?p=9212</guid>

					<description><![CDATA[Ever wondered how spellchecks and auto-corrections in your mobile phones bails you out by automatically suggesting the words that you were just about to type? I’ve come across so many amazing functionalities in Python but the fuzzywuzzy package in particular caught my interest. So i decided to write a blog about this topic and share [&#8230;]]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="9212" class="elementor elementor-9212" data-elementor-settings="{&quot;element_pack_global_tooltip_width&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_padding&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true}}" data-elementor-post-type="post">
						<section data-particle_enable="false" data-particle-mobile-disabled="false" class="elementor-section elementor-top-section elementor-element elementor-element-45e9b39 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="45e9b39" data-element_type="section" data-settings="{&quot;jet_parallax_layout_list&quot;:[],&quot;ekit_has_onepagescroll_dot&quot;:&quot;yes&quot;}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7211a67" data-id="7211a67" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-975108f elementor-widget elementor-widget-text-editor" data-id="975108f" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><em>Ever wondered how spellchecks and auto-corrections in your mobile phones bails you out by automatically suggesting the words that you were just about to type?</em></p><p>I’ve come across so many amazing functionalities in Python but the fuzzywuzzy package in particular caught my interest. So i decided to write a blog about this topic and share it to wider network.</p><p>Down below are the sub topics of this blog :</p><p><strong>Levenshtein Distance</strong></p><p><strong>Fuzzywuzzy Package</strong></p><p><strong>Some Examples</strong></p><p><strong>End Notes</strong></p><p><strong>Levenshtein Distance</strong></p><p>The concept of <em>Levenshtein Distance </em>sometimes also called as <em>Minimum Edit distance</em> is a popular metric used to measure the distance between two strings. It is calculated by counting number of edits required to transform one string into another. The edits could be one of the following:</p><ul><li>Addition of a new letter.</li><li>Removal of a letter.</li><li> Substitution</li></ul><p>Mathematical formula behind the calculation goes by something like this.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-ad46877 elementor-widget elementor-widget-image" data-id="ad46877" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img fetchpriority="high" decoding="async" width="491" height="103" src="https://peopledecode.com/wp-content/uploads/2022/03/dsfaafdff.png" class="attachment-large size-large wp-image-9214" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/dsfaafdff.png 491w, https://peopledecode.com/wp-content/uploads/2022/03/dsfaafdff-300x63.png 300w" sizes="(max-width: 491px) 100vw, 491px" />															</div>
				</div>
				<div class="elementor-element elementor-element-23317f5 elementor-widget elementor-widget-text-editor" data-id="23317f5" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The formula above contains too many notations and subscripts too wrap one’s head around. I will quickly explain this by simple demonstration. Consider below the two strings <strong>‘Shallow’ and ‘Follow’.</strong></p><p>Following are the 3 simple edits required to change the 1st string to the other.</p><p><strong><em>Edit 1 : Remove the 1st letter ‘S’.</em></strong></p><p><strong><em>Edit 2 : Substitute ‘h’ with ‘F’.</em></strong></p><p><strong><em>Edit 3 : Substitute ‘a’ with ‘o’.</em></strong></p><p>And there we have it the Levenshtein distance between the two strings ‘Shallow’ and ‘Hallow’ is 3.</p><p>Now, there could be multiple ways of transitioning from one word to another but Levenshtein distance chooses the smallest possible path.</p><p>I have written a code in order to calculate the Levenshtein Distance for any two given strings. I highly recommend you to go through it. You can find the links to my notebook down below. Feel free to try out some other combinations and do let know if you find this helpful in the comment section.</p><p>Levenshtein Distance Calculation in Python : <a href="https://github.com/Sreemanto/Fuzzy-Matching/blob/master/Levenshtein%20Distance.ipynb"><strong>Link</strong></a></p><p>Also, to understand the calculations in more details and to make sense of the bizarre mathematical formula shown above do watch this video. Very well explained, very intuitive and I highly recommend you to go through it once.</p><p><strong>Fuzzywuzzy Package</strong></p><p>The concept of fuzzy matching is to calculate similarity between any two given strings. And this is achieved by making use of the Levenshtein Distance between the two strings.</p><p>fuzzywuzzy is an inbuilt package you find inside python which has certain functions in it which does all this calculation for us. I’m going to discuss four of them which are as follows:</p><p>fuzz.ratio()</p><p>fuzz.partial_ratio()</p><p>fuzz.token_sort_ratio()</p><p>fuzz.token_set_ration()</p><p>Note : To use this you have to first install this package. Here’s how you do it.</p><p>pip install fuzzywuzzy</p><p><strong>Examples</strong></p><p>You may need to restart your kernel post installation.</p><p><strong>ratio()</strong></p><p>from fuzzywuzzy import fuzz<br />fuzz.ratio(&#8216;My name is Sreemanta&#8217;,&#8217;My name is Sreemanta Kesh&#8217;)</p><p><em>Output : 89</em></p><p>The output is indicative of the fact that both the strings are 89% similar. Let us try some more examples.</p><p>print(fuzz.ratio(&#8216;My name is Sreemanta&#8217;,&#8217;My name is Sreemanta &#8216;))<br />print(fuzz.ratio(&#8216;My name is Sreemanta&#8217;,&#8217;My name is Sreemanta&#8217;))</p><p><em>Output : 98</em></p><p><em>Output : 100</em></p><p>fuzz.ratio() returns 100% only when it finds exact match. The 2nd example stated is an exact match where as the 1st one differs by a space.</p><p>fuzz.ratio(&#8216;My name is Sreemanta&#8217;,&#8217;Sreemanta name is My&#8217;)</p><p><em>Output : 45</em></p><p>This tells us that order of the string also matters while comapring.</p><p><strong>partial_ratio()</strong></p><p>Lets perform the same example using partial_ratio() method.</p><p>print(fuzz.partial_ratio(&#8216;My name is Sreemanta&#8217;,&#8217;My name is Sreemanta Kesh&#8217;))<br />print(fuzz.partial_ratio(&#8216;My name is Sreemanta&#8217;,&#8217;My name is Sreemanta      &#8216;))</p><p><em>Output : 100</em></p><p><em>Output : 100</em></p><p>Notice that the given strings are not same in either of the two cases still it gives a 100% match. This is because partial_ratio() is just checking if either of the string is a sub string of the other. Down below is another example to confirm the same</p><p>fuzz.partial_ratio(&#8216;New York City&#8217;,&#8217;New York&#8217;)</p><p><em>Output : 100</em></p><p><strong>token_sort_ratio()</strong></p><p>fuzz.token_sort_ratio(&#8216;My name is Sreemanta&#8217;,&#8217;Sreemanta name is My   &#8216;)</p><p><em>Output : 100</em></p><p>This result is sharply different from the one observed when same command was run with ratio() method which yielded 45% match.</p><p>fuzz.token_sort_ratio(&#8216;My name is Sreemanta&#8217;,&#8217;sreemanta name is My **  &#8216;)</p><p><em>Output : 100</em></p><p>From the above two example we can conclude that</p><ol><li>Order of the words does not matter.</li><li>It also ignores punctuation.</li></ol><p>It follows the concept of tokenization where the strings are converted in to tokens and then they are sorted in alphabetical order and thereafter the comparison happens.</p><p><strong>token_set_ratio()</strong></p><p>print(fuzz.token_sort_ratio(&#8216;My name is Sreemanta&#8217;,&#8217;Sreemanta name is My  Kesh &#8216;))<br />print(fuzz.token_set_ratio(&#8216;My name is Sreemanta&#8217;,&#8217;Sreemanta name is My  Kesh &#8216;))</p><p><em>Output : 89</em></p><p><em>Output : 100</em></p><p>token_set_ratio() takes a more flexible approach than token_sort_ratio(). Instead of just tokenizing the strings, sorting and then pasting the tokens back together, token_set_ratio performs a set operation that takes out the common tokens (the intersection) and then makes fuzz.ratio(). Extra or same repeated words do not matter.</p><p>fuzz.token_set_ratio(&#8216;Jingle Bells&#8217;,&#8217; Bells Jingle Bells&#8217;)</p><p><em>Output : 100</em></p><p><strong>End Notes</strong></p><p>When I performed fuzzy matching exercise first time I pondered over the following two questions</p><ol><li>How Levenshtein Distance (LD) is being used to calculate the ratio?</li><li>What is this ratio?</li></ol><p>After doing a small research I was able to unearth the formula.</p><p><strong>Ratio = (len(str1)+len(str2) &#8211; LD) / (len(str1)+len(str2))</strong></p><p>Exercise for you : Try to embed this formula into my Levenshtein Notebook</p><p>There are some more functionalities present inside the fuzzywuzzy package such as WRatio(), URation etc. I urge you to explore more.</p><p>Personally I have used fuzzy matching in my organization, where the aim was to map ‘Vendor Names’ with it’s ‘Invoice Reference’ and check for duplicity by setting the fuzz.ratio() threshold to 96%. This methodology has a various other important application across the industries like spell checks as listed in the beginning, CRM applications, Bioinformatics etc.</p><p> </p><p>Do comment your thoughts below.</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		]]></content:encoded>
					
					<wfw:commentRss>https://peopledecode.com/the-concept-of-fuzzy-matching-in-python/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>5 data formatting task from my last Data Science Project</title>
		<link>https://peopledecode.com/5-data-formatting-task-from-my-last-data-science-project/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=5-data-formatting-task-from-my-last-data-science-project</link>
					<comments>https://peopledecode.com/5-data-formatting-task-from-my-last-data-science-project/#respond</comments>
		
		<dc:creator><![CDATA[master]]></dc:creator>
		<pubDate>Tue, 08 Mar 2022 08:45:47 +0000</pubDate>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://peopledecode.com/?p=9181</guid>

					<description><![CDATA[Whether you’re Data Analyst, Data Engineer or Data Scientist there’s just no running away from data cleaning. It’s the essential skill that you need if you want to make a career in data. I am writing this blog to share 5 unique data formatting challenge that I faced in my last project working for my [&#8230;]]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="9181" class="elementor elementor-9181" data-elementor-settings="{&quot;element_pack_global_tooltip_width&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_padding&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true}}" data-elementor-post-type="post">
						<section data-particle_enable="false" data-particle-mobile-disabled="false" class="elementor-section elementor-top-section elementor-element elementor-element-975a842 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="975a842" data-element_type="section" data-settings="{&quot;jet_parallax_layout_list&quot;:[],&quot;ekit_has_onepagescroll_dot&quot;:&quot;yes&quot;}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2e24fff" data-id="2e24fff" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8f5ed9c elementor-widget elementor-widget-text-editor" data-id="8f5ed9c" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Whether you’re Data Analyst, Data Engineer or Data Scientist there’s just no running away from data cleaning. It’s the essential skill that you need if you want to make a career in data. I am writing this blog to share 5 unique data formatting challenge that I faced in my last project working for my client.</p><h2>Tip : If you are preparing for you python interview this might be a good practice.</h2><ol><li><em> Creating tables from a nested json files.</em></li><li><em> Extracting the month name directly from month number.</em></li><li><em> Masking the confidential columns in your data.</em></li><li><em> Concatenating excel sheets with sheet names as alias for identification.</em></li><li><em> Formatting a complex dictionary to a required dataframe.</em></li></ol><h4>1. Creating tables from a nested json files</h4>								</div>
				</div>
				<div class="elementor-element elementor-element-1350181 elementor-widget elementor-widget-image" data-id="1350181" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" width="1400" height="117" src="https://peopledecode.com/wp-content/uploads/2022/03/d.png" class="attachment-full size-full wp-image-9183" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/d.png 1400w, https://peopledecode.com/wp-content/uploads/2022/03/d-300x25.png 300w, https://peopledecode.com/wp-content/uploads/2022/03/d-1024x86.png 1024w" sizes="(max-width: 1400px) 100vw, 1400px" />															</div>
				</div>
				<div class="elementor-element elementor-element-bea9084 elementor-widget elementor-widget-text-editor" data-id="bea9084" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>This is the sample json object that we need to start with <br />My first impression while staring at this problem was there must be definitely a method in pandas that can directly read json files and thank god that assumption came true. But let’s analyze this json little further as it appears to be nested.<br />After little exploration I could understand the structure little better</p>								</div>
				</div>
				<div class="elementor-element elementor-element-2e4092c elementor-widget elementor-widget-spacer" data-id="2e4092c" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-bfb88ae elementor-widget elementor-widget-image" data-id="bfb88ae" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" width="1126" height="358" src="https://peopledecode.com/wp-content/uploads/2022/03/ds.png" class="attachment-full size-full wp-image-9187" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/ds.png 1126w, https://peopledecode.com/wp-content/uploads/2022/03/ds-300x95.png 300w, https://peopledecode.com/wp-content/uploads/2022/03/ds-1024x326.png 1024w" sizes="(max-width: 1126px) 100vw, 1126px" />															</div>
				</div>
				<div class="elementor-element elementor-element-fe44978 elementor-widget elementor-widget-text-editor" data-id="fe44978" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Next, let ushop on to Jupyter notebook and directly fire a query that reads a json file.<br />df = pd.read_json(‘test.json’)<br />df.head(3)<br />Executing above code produces the below output</p>								</div>
				</div>
				<div class="elementor-element elementor-element-9de51ff elementor-widget elementor-widget-image" data-id="9de51ff" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="998" height="181" src="https://peopledecode.com/wp-content/uploads/2022/03/dfsdfd.png" class="attachment-full size-full wp-image-9188" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/dfsdfd.png 998w, https://peopledecode.com/wp-content/uploads/2022/03/dfsdfd-300x54.png 300w" sizes="(max-width: 998px) 100vw, 998px" />															</div>
				</div>
				<div class="elementor-element elementor-element-32ccc9f elementor-widget elementor-widget-text-editor" data-id="32ccc9f" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Clearly, we can see there’s clean table barring the 1st columns. And if you observe closely, you will also find a mapping between the 1st column and the rest of the table. [ emp_id =1 &amp; Id = 1] At this point, I was convinced that these might be stored as two tables one serving as a master for the employees and other(1st column) having detailed information about them.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-c3d3b02 elementor-widget elementor-widget-spacer" data-id="c3d3b02" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-024f05c elementor-widget elementor-widget-text-editor" data-id="024f05c" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>#only working on the 1st column.<br />d1 = pd.read_json(&#8216;test.json&#8217;).iloc[:,0]#creating an empty dataframe<br />df = pd.DataFrame()#looping through each sequence and concatenating them<br />for i in d1:<br />    df1 = pd.DataFrame(i)<br />    df = pd.concat([df,df1])<br />df</p>								</div>
				</div>
				<div class="elementor-element elementor-element-75abe28 elementor-widget elementor-widget-text-editor" data-id="75abe28" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The above code upon execution will show a nice clean table which goes as follows</p>								</div>
				</div>
				<div class="elementor-element elementor-element-9b52a05 elementor-widget elementor-widget-spacer" data-id="9b52a05" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-82b9f60 elementor-widget elementor-widget-image" data-id="82b9f60" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="469" height="427" src="https://peopledecode.com/wp-content/uploads/2022/03/sdfsdf.png" class="attachment-full size-full wp-image-9189" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/sdfsdf.png 469w, https://peopledecode.com/wp-content/uploads/2022/03/sdfsdf-300x273.png 300w" sizes="(max-width: 469px) 100vw, 469px" />															</div>
				</div>
				<div class="elementor-element elementor-element-799cebb elementor-widget elementor-widget-text-editor" data-id="799cebb" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>That completes the first table which was just contained in the 1st column. For extracting the master employee table the code goes down below.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-358fb9b elementor-widget elementor-widget-text-editor" data-id="358fb9b" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>#Skipping the first column and saving the rest of the table<br />d2 = pd.read_json(&#8216;test.json&#8217;).iloc[:,1:]</p>								</div>
				</div>
				<div class="elementor-element elementor-element-aac29f8 elementor-widget elementor-widget-text-editor" data-id="aac29f8" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>For beginners, I would like to point out that this is just one small task and ideally for carrying out these kind of specific task we should develop a habit of packing our code together by writing them in functions. Down below is the small example of how to piece all things together and also make sure to avoid hard coding.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-79eac11 elementor-widget elementor-widget-spacer" data-id="79eac11" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-fba63c3 elementor-widget elementor-widget-image" data-id="fba63c3" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="987" height="413" src="https://peopledecode.com/wp-content/uploads/2022/03/sdsddsdd.png" class="attachment-full size-full wp-image-9190" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/sdsddsdd.png 987w, https://peopledecode.com/wp-content/uploads/2022/03/sdsddsdd-300x126.png 300w" sizes="(max-width: 987px) 100vw, 987px" />															</div>
				</div>
				<div class="elementor-element elementor-element-7534113 elementor-widget elementor-widget-text-editor" data-id="7534113" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>This might be less readable. The roadmap to get here should be by writing simple one liners first and then bundle them together in a function like this. <br />2. Extracting the month name directly from month number.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-cbbfa9e elementor-widget elementor-widget-image" data-id="cbbfa9e" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="717" height="291" src="https://peopledecode.com/wp-content/uploads/2022/03/sfdfsdfffff.png" class="attachment-full size-full wp-image-9191" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/sfdfsdfffff.png 717w, https://peopledecode.com/wp-content/uploads/2022/03/sfdfsdfffff-300x122.png 300w" sizes="(max-width: 717px) 100vw, 717px" />															</div>
				</div>
				<div class="elementor-element elementor-element-c038a1e elementor-widget elementor-widget-text-editor" data-id="c038a1e" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>This is the task.<br />This is easiest of all the five tasks only if you know the right library.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-89efeb1 elementor-widget elementor-widget-text-editor" data-id="89efeb1" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>import calendardf[&#8216;Month_Name&#8217;] = df[&#8216;Month&#8217;].apply(lambda x: calendar.month_abbr[int(x)])</p>								</div>
				</div>
				<div class="elementor-element elementor-element-6c295c5 elementor-widget elementor-widget-text-editor" data-id="6c295c5" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The above code should be enough for you if your ‘Month’ column does not contain missing values which was not the case for me. So, I had to write a code to incorporate that. Down below is the complete version of it</p>								</div>
				</div>
				<div class="elementor-element elementor-element-fe2ad55 elementor-widget elementor-widget-text-editor" data-id="fe2ad55" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>df[‘Month_Name’] = df[‘Month’].fillna(0).apply(lambda x: calendar.month_abbr[int(x)] if x!= 0 else np.nan)</p>								</div>
				</div>
				<div class="elementor-element elementor-element-4c8390e elementor-widget elementor-widget-text-editor" data-id="4c8390e" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>calendar.month_abbr[int(x)] </strong>might throw up an exception if it encounters a missing value and hence we need to impute it first and then write an else condition to restore it NaN.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-b2927f7 elementor-widget elementor-widget-text-editor" data-id="b2927f7" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h1>3. Masking the confidential columns in your data.</h1><p>Before jumping to the code I want to talk about the reason behind masking. When you work with consulting firms chances are you might have to deal with third party who may or may not have signed NDA. For people hearing NDA for the first time — Non-disclosure Agreements are an important legal framework used to protect sensitive and confidential information from being made available by the recipient of that information.<br />I was in a situation where we were dealing with the sample data and it involved sending it to a third party.<br />Now let’s jump on to the code. Here’s the sample data</p>								</div>
				</div>
				<div class="elementor-element elementor-element-844c9f8 elementor-widget elementor-widget-image" data-id="844c9f8" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="663" height="465" src="https://peopledecode.com/wp-content/uploads/2022/03/sdfsdfsdfsdfsdfsdfsd.png" class="attachment-full size-full wp-image-9193" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/sdfsdfsdfsdfsdfsdfsd.png 663w, https://peopledecode.com/wp-content/uploads/2022/03/sdfsdfsdfsdfsdfsdfsd-300x210.png 300w" sizes="(max-width: 663px) 100vw, 663px" />															</div>
				</div>
				<div class="elementor-element elementor-element-cee87fc elementor-widget elementor-widget-text-editor" data-id="cee87fc" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>find the data at : <a href="https://github.com/Sreemanto/5-data-formatting-task-from-my-last-Data-Science-Project/blob/main/Confidential_data.csv">Data</a><br />Chance are you might have never heard of the package called <strong>‘cape-privacy’<br /></strong>So. I would recommend you install this right away if you wish to emulate the same exercise at your end.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-f9d53ce elementor-widget elementor-widget-text-editor" data-id="f9d53ce" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p># pip install cape-privacy</p>								</div>
				</div>
				<div class="elementor-element elementor-element-c6ae6b1 elementor-widget elementor-widget-text-editor" data-id="c6ae6b1" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Now this library has an array of method. It generally aims at providing data privacy and data perturbation. I will link some good resources below right at the end of this blog where you can explore more about this package.<br />We want to import the transformation class from this module</p>								</div>
				</div>
				<div class="elementor-element elementor-element-d1c7bc7 elementor-widget elementor-widget-text-editor" data-id="d1c7bc7" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>from cape_privacy.pandas import transformations as tfms</p>								</div>
				</div>
				<div class="elementor-element elementor-element-9fee114 elementor-widget elementor-widget-text-editor" data-id="9fee114" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>This class has lot of methods associated with it to use. We can check them by firing below query</p>								</div>
				</div>
				<div class="elementor-element elementor-element-f0754be elementor-widget elementor-widget-text-editor" data-id="f0754be" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>tfms??</p>								</div>
				</div>
				<div class="elementor-element elementor-element-52176a0 elementor-widget elementor-widget-text-editor" data-id="52176a0" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>This will take you to the below output.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-a86fa42 elementor-widget elementor-widget-image" data-id="a86fa42" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="943" height="352" src="https://peopledecode.com/wp-content/uploads/2022/03/kkjh.png" class="attachment-full size-full wp-image-9194" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/kkjh.png 943w, https://peopledecode.com/wp-content/uploads/2022/03/kkjh-300x112.png 300w" sizes="(max-width: 943px) 100vw, 943px" />															</div>
				</div>
				<div class="elementor-element elementor-element-920afdf elementor-widget elementor-widget-text-editor" data-id="920afdf" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>You can check the documentation of each one of them in details by further querying on the specific method. I’m going to use Tokenizer let’s read and understand the documentation as we are using this for the very first time.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-dcce412 elementor-widget elementor-widget-image" data-id="dcce412" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="848" height="412" src="https://peopledecode.com/wp-content/uploads/2022/03/vvvv.png" class="attachment-full size-full wp-image-9195" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/vvvv.png 848w, https://peopledecode.com/wp-content/uploads/2022/03/vvvv-300x146.png 300w" sizes="(max-width: 848px) 100vw, 848px" />															</div>
				</div>
				<div class="elementor-element elementor-element-4b0d35d elementor-widget elementor-widget-text-editor" data-id="4b0d35d" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>This is just a part of the documentation. When you execute this you will see details of attributes and examples associated with the same method.<br />Ok. So, the example given tells us that we need to specify a parameter called <strong>‘max_token_len’</strong> which should tell python the length of the masked data. The other parameter <strong>‘sceret’</strong> allows the masked data to be reversed to their original data when the secret<br />key is known we which really don’t need as of now.<br />And here goes the final execution.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-a69cb22 elementor-widget elementor-widget-text-editor" data-id="a69cb22" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>tokenize_name = tfms.Tokenizer(max_token_len = 20)<br />df[&#8216;Name&#8217;] = tokenize_name(df.Name)<br />df</p>								</div>
				</div>
				<div class="elementor-element elementor-element-877a704 elementor-widget elementor-widget-text-editor" data-id="877a704" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>And we have our masked data.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-6ee5eb2 elementor-widget elementor-widget-image" data-id="6ee5eb2" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="715" height="497" src="https://peopledecode.com/wp-content/uploads/2022/03/cvvc.png" class="attachment-full size-full wp-image-9196" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/cvvc.png 715w, https://peopledecode.com/wp-content/uploads/2022/03/cvvc-300x209.png 300w" sizes="(max-width: 715px) 100vw, 715px" />															</div>
				</div>
				<div class="elementor-element elementor-element-05e1b9e elementor-widget elementor-widget-text-editor" data-id="05e1b9e" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Pheww !! Now I can safely ship the data to third party.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-0edb204 elementor-widget elementor-widget-spacer" data-id="0edb204" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-4707c3a elementor-widget elementor-widget-text-editor" data-id="4707c3a" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h1>4. Concatenating excel sheets with sheet names as alias for identification.</h1><p>If the heading does not make sense to you then just ignore it and look at the image down below.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-6d9a8ef elementor-widget elementor-widget-image" data-id="6d9a8ef" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1400" height="958" src="https://peopledecode.com/wp-content/uploads/2022/03/exvefff.png" class="attachment-full size-full wp-image-9197" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/exvefff.png 1400w, https://peopledecode.com/wp-content/uploads/2022/03/exvefff-300x205.png 300w, https://peopledecode.com/wp-content/uploads/2022/03/exvefff-1024x701.png 1024w, https://peopledecode.com/wp-content/uploads/2022/03/exvefff-748x512.png 748w, https://peopledecode.com/wp-content/uploads/2022/03/exvefff-760x520.png 760w" sizes="(max-width: 1400px) 100vw, 1400px" />															</div>
				</div>
				<div class="elementor-element elementor-element-d49f83e elementor-widget elementor-widget-text-editor" data-id="d49f83e" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>We have <a href="https://github.com/Sreemanto/5-data-formatting-task-from-my-last-Data-Science-Project/blob/main/Football_Data.xlsx">data</a> containing multiple sheets and we need to combine all of them together with sheet name as new column for identification<br />In actual scenario I had more than 30 sheets and hardcoding the sheet names was simply not an option. I am using pandas for 4+ years yet I was never aware of a method which directly fetches the sheet name.<br />This can be achieved by simple two liner</p>								</div>
				</div>
				<div class="elementor-element elementor-element-2624d20 elementor-widget elementor-widget-text-editor" data-id="2624d20" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>path = &#8216;Football_Data.xlsx&#8217;<br />sheetnames = pd.ExcelFile(path).sheet_names<br />sheetnames</p>								</div>
				</div>
				<div class="elementor-element elementor-element-bb590df elementor-widget elementor-widget-text-editor" data-id="bb590df" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Output : [‘Premier League’, ‘Serie A’, ‘La Liga’]<br />Leveraging this output we are going to run a loop and add sheets one after another by using<br />pandas.concat as we saw in the 1st task in the blog</p>								</div>
				</div>
				<div class="elementor-element elementor-element-27f4be0 elementor-widget elementor-widget-text-editor" data-id="27f4be0" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>df = pd.DataFrame()<br />for name in sheetnames:<br />    df1 = pd.read_excel(&#8216;Football_Data.xlsx&#8217;,sheet_name = name)<br />    df1[&#8216;Type&#8217;] = name<br />    df = pd.concat([df,df1])<br />df.reset_index(drop=True,inplace=True)</p>								</div>
				</div>
				<div class="elementor-element elementor-element-a51b407 elementor-widget elementor-widget-text-editor" data-id="a51b407" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The resultant dataframe.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-90a9408 elementor-widget elementor-widget-image" data-id="90a9408" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="766" height="385" src="https://peopledecode.com/wp-content/uploads/2022/03/jjkjkj.png" class="attachment-full size-full wp-image-9201" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/jjkjkj.png 766w, https://peopledecode.com/wp-content/uploads/2022/03/jjkjkj-300x151.png 300w" sizes="(max-width: 766px) 100vw, 766px" />															</div>
				</div>
				<div class="elementor-element elementor-element-61f3672 elementor-widget elementor-widget-text-editor" data-id="61f3672" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>I never though this would be as simple as this.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-ce0d0b2 elementor-widget elementor-widget-text-editor" data-id="ce0d0b2" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h1><strong>5. Formatting a complex list to a required dataframe.</strong></h1><p>The question goes something like this</p>								</div>
				</div>
				<div class="elementor-element elementor-element-0f22d1f elementor-widget elementor-widget-image" data-id="0f22d1f" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1400" height="511" src="https://peopledecode.com/wp-content/uploads/2022/03/aaaa.png" class="attachment-full size-full wp-image-9202" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/aaaa.png 1400w, https://peopledecode.com/wp-content/uploads/2022/03/aaaa-300x110.png 300w, https://peopledecode.com/wp-content/uploads/2022/03/aaaa-1024x374.png 1024w" sizes="(max-width: 1400px) 100vw, 1400px" />															</div>
				</div>
				<div class="elementor-element elementor-element-6cd500e elementor-widget elementor-widget-text-editor" data-id="6cd500e" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>At this point you can pause reading the blog and take up this challenge. I was interviewing someone for a senior Data Engineer role and gave this problem to test the candidate’s python skill. So if you are able to solve this in 15 mins(yes you can google) you can consider your self to be at a very good place ad I will rate you 4.5/5 in Python.<br />Way I approach these kind of problems is by starting from an absolute baseline by firing the below query blindly</p>								</div>
				</div>
				<div class="elementor-element elementor-element-8efe7a8 elementor-widget elementor-widget-text-editor" data-id="8efe7a8" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>#sliced for the first shift by looking at the target dataframe<br />pd.DataFrame(availability[0:7])</p>								</div>
				</div>
				<div class="elementor-element elementor-element-c3f0a32 elementor-widget elementor-widget-image" data-id="c3f0a32" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="227" height="330" src="https://peopledecode.com/wp-content/uploads/2022/03/sasadsadsa.png" class="attachment-full size-full wp-image-9203" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/sasadsadsa.png 227w, https://peopledecode.com/wp-content/uploads/2022/03/sasadsadsa-206x300.png 206w" sizes="(max-width: 227px) 100vw, 227px" />															</div>
				</div>
				<div class="elementor-element elementor-element-d1d40e3 elementor-widget elementor-widget-text-editor" data-id="d1d40e3" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>We are no way near the output dataframe but one realization came to my mind that we might have to go for a transposed version of this dataframe.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-4d09409 elementor-widget elementor-widget-image" data-id="4d09409" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="963" height="450" src="https://peopledecode.com/wp-content/uploads/2022/03/acvfrt.png" class="attachment-full size-full wp-image-9204" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/acvfrt.png 963w, https://peopledecode.com/wp-content/uploads/2022/03/acvfrt-300x140.png 300w" sizes="(max-width: 963px) 100vw, 963px" />															</div>
				</div>
				<div class="elementor-element elementor-element-3e28784 elementor-widget elementor-widget-text-editor" data-id="3e28784" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Now compare this intermediate dataframe to the final resultant data frame. You will realize that only thing required from this data is last row and the index needs to be renamed from <strong>‘value’ </strong>to<strong> ‘shift 1’.</strong></p><p>So, at this point. I need to make sure.</p><ol><li>Get rid of the rest of the rows.</li><li>Renamed from <strong>‘value’ </strong>to<strong>‘shift 1’ </strong>before transposing</li><li>Get rid of the shift and day value.</li></ol><p>Let’s do that and see the results</p>								</div>
				</div>
				<div class="elementor-element elementor-element-177b196 elementor-widget elementor-widget-text-editor" data-id="177b196" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>pd.DataFrame(availability[0:7]).rename(columns={&#8216;value&#8217;:&#8217;shift&#8217; + &#8216;1&#8217;}).iloc[:,2:].T</p>								</div>
				</div>
				<div class="elementor-element elementor-element-1f84444 elementor-widget elementor-widget-image" data-id="1f84444" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="276" height="69" src="https://peopledecode.com/wp-content/uploads/2022/03/sdfsdfsdfssff.png" class="attachment-full size-full wp-image-9205" alt="" />															</div>
				</div>
				<div class="elementor-element elementor-element-af5683d elementor-widget elementor-widget-text-editor" data-id="af5683d" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Now, we are somewhat close to our resultant dataframe. Next two tasks are</p><ol><li>Convert the 0,1,2… to Monday, Tuesday, Wednesday..</li><li>Run a loop for all the shifts by slicing every 7 rows from the starting dataframe.</li></ol><p>Step 1 goes as follows</p>								</div>
				</div>
				<div class="elementor-element elementor-element-9d50f8e elementor-widget elementor-widget-text-editor" data-id="9d50f8e" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>import calendardf = pd.DataFrame(availability[0:7]).rename(columns={&#8216;value&#8217;:&#8217;shift&#8217; + &#8216;1&#8217;}).iloc[:,2:].T<br />df.columns = list(map(lambda x:calendar.day_name[int(x)],df.columns))<br />df</p>								</div>
				</div>
				<div class="elementor-element elementor-element-1e9d7e1 elementor-widget elementor-widget-text-editor" data-id="1e9d7e1" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Does the above code ring any bells? 🙂</p>								</div>
				</div>
				<div class="elementor-element elementor-element-9fc82c3 elementor-widget elementor-widget-image" data-id="9fc82c3" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="721" height="76" src="https://peopledecode.com/wp-content/uploads/2022/03/asacacasa.png" class="attachment-full size-full wp-image-9206" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/asacacasa.png 721w, https://peopledecode.com/wp-content/uploads/2022/03/asacacasa-300x32.png 300w" sizes="(max-width: 721px) 100vw, 721px" />															</div>
				</div>
				<div class="elementor-element elementor-element-fab784f elementor-widget elementor-widget-text-editor" data-id="fab784f" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Now. Putting all of it together</p>								</div>
				</div>
				<div class="elementor-element elementor-element-a00e7e1 elementor-widget elementor-widget-text-editor" data-id="a00e7e1" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>df = pd.DataFrame()for i in range(0,len(availability),7):<br />    <br />    df = pd.concat([df,pd.DataFrame(availability[i:i+7]).iloc[:,2:].T])<br />    <br />df.index = list(map(lambda x:&#8217;Shift &#8216;+str(x+1),df.reset_index(drop=True).index.values))df.columns = list(map(lambda x:calendar.day_name[int(x)],df.columns))df</p>								</div>
				</div>
				<div class="elementor-element elementor-element-31d56f1 elementor-widget elementor-widget-image" data-id="31d56f1" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="748" height="174" src="https://peopledecode.com/wp-content/uploads/2022/03/sadsaxsaxsasadsa.png" class="attachment-full size-full wp-image-9207" alt="" srcset="https://peopledecode.com/wp-content/uploads/2022/03/sadsaxsaxsasadsa.png 748w, https://peopledecode.com/wp-content/uploads/2022/03/sadsaxsaxsasadsa-300x70.png 300w" sizes="(max-width: 748px) 100vw, 748px" />															</div>
				</div>
				<div class="elementor-element elementor-element-baf6e97 elementor-widget elementor-widget-text-editor" data-id="baf6e97" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Resultant DataFrame</p><h1>Conclusion</h1><p>These tasks might not appear so difficult as we have libraries in place that does the job for us but if you are a beginner or an intermediate in python chances are you might have never used some of them before.</p><p>Thank for reading.</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		]]></content:encoded>
					
					<wfw:commentRss>https://peopledecode.com/5-data-formatting-task-from-my-last-data-science-project/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Just Enough Data Science</title>
		<link>https://peopledecode.com/just-enough-data-science/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=just-enough-data-science</link>
					<comments>https://peopledecode.com/just-enough-data-science/#respond</comments>
		
		<dc:creator><![CDATA[master]]></dc:creator>
		<pubDate>Sun, 06 Mar 2022 12:41:37 +0000</pubDate>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://peopledecode.com/?p=9039</guid>

					<description><![CDATA[Learning Timeline The first question that I am always asked is how much time does it take. I’ll answer it in two ways. Assuming you’re a working professional&#8211;&#160;Anything between 10–12 hrs a week stretched for continuous 18–20 weeks should be enough. Remember consistency is the key, remaining consistent can be a big challenge and this [&#8230;]]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="9039" class="elementor elementor-9039" data-elementor-settings="{&quot;element_pack_global_tooltip_width&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_padding&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true}}" data-elementor-post-type="post">
						<section data-particle_enable="false" data-particle-mobile-disabled="false" class="elementor-section elementor-top-section elementor-element elementor-element-9b20ed9 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="9b20ed9" data-element_type="section" data-settings="{&quot;jet_parallax_layout_list&quot;:[],&quot;ekit_has_onepagescroll_dot&quot;:&quot;yes&quot;}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-12656e5" data-id="12656e5" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8a9eab6 elementor-widget elementor-widget-text-editor" data-id="8a9eab6" data-element_type="widget" data-settings="{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h1><strong>Learning Timeline</strong></h1><p><em>The first question that I am always asked is how much time does it take. I’ll answer it in two ways.</em></p><ol><li><strong>Assuming you’re a working professional</strong><strong>&#8211;</strong> Anything between 10–12 hrs a week stretched for continuous 18–20 weeks should be enough. Remember consistency is the key, remaining consistent can be a big challenge and this where most learners break.</li><li><strong> Assuming you’re a full-time learner &#8211;</strong>In this case, you don&#8217;t have the burden of working 6–8hrs a day and you can devote more time to learning. If you can manage 20+ hrs week 10–12 weeks you should be ready and if you are choosing a training program select one that fits this timeline.</li></ol><h1><strong>Data Science skillset</strong></h1><p>This is where there lies a big gap in information for the learners. I’ve seen 90% of data science course generally focuses on only three things i.e. <strong>Python, statistics, algorithms(including ML/DL)</strong> while this is certainly the essentials to of being a data scientists but we need more. Once you are hired your role actually fluctuates. For the outsiders, the tag <strong>“Data Scientists”</strong> misleads people and sometimes unfairly assumes that it&#8217;s only about predictive models. You will find me writing SQL queries, working in excel, building dashboards, and at times even documenting my work in PowerPoint slides.</p><p>Here’s the list of skills you should acquire before applying for a Data Science job:</p><ul><li><strong><em>Python</em></strong></li><li><strong><em>Stats &amp; ML</em></strong></li><li><strong><em>One Data Visualization tool &#8211; Power BI/Tableau</em></strong></li><li><strong><em>SQL</em></strong></li><li><strong><em>Exposure to at least one cloud platforms from AWS/Azure/GCP</em></strong></li><li><strong><em>Python web frameworks like Flask/Django (good to have)</em></strong></li></ul><p>One thing I’ve learned working in the Industry is Data Science is just a process where you use data to add value to the business. Sticking just to algorithms is sometimes is not enough. Additionally, the analysis you do will not be sitting in your local machine, it has to be deployed somewhere so explore #5 and #6 and learn how to deploy/productionize your ML models.</p><p>Why have I not mentioned R? R is cool but Python is now lightyears ahead of R. Also, out of every 10 jobs, you’ll find 8 of them would require Python. Python is a scripting language that goes beyond just Data Science. I cannot say the same for R. I recommend learning just one out of R and Python and hence the latter would be a wise pick.</p><h1><strong>Application</strong></h1><p>The best way to learn something is implementation. Don’t just limit your learning to exercise and assignments in online/offline classes. Make sure you are building a full-fledged project which explains to the recruiter your ability to work as a data scientist. I recommend building an end-to-end project, I will recommend one in the resource section. Avoid drafting projects like titanic datasets, house price prediction, etc.</p><p>When you work on a project always keep these three points in your mind:</p><ol><li><strong><em> What is the objective of the project?</em></strong><strong><em><br />2. What was your role in the project?<br />3. What impact will your project make to the business/clients/anybody that you are working for?</em></strong></li></ol><p>As a recruiter I am always asking what challenges has the candidate faced and how did he overcome them.</p><p><strong>Sample Project:</strong> <a href="https://www.youtube.com/watch?v=MpF9HENQjDo&amp;list=PL2zq7klxX5ASFejJj80ob9ZAnBHdz5O1t">https://www.youtube.com/watch?v=MpF9HENQjDo&amp;list=PL2zq7klxX5ASFejJj80ob9ZAnBHdz5O1t</a></p><p><em><strong>Tip: </strong></em><em>If you are watching the tutorial just try emulating the steps with a different dataset and also make sure to give credit to the actual creator</em>. Avoid Plagiarism.</p><h1><strong>How to combat the inexperience</strong></h1><p>This is by far the biggest challenge that people face. The harsh reality is there are very limited companies appoints fresher. The easiest route in today&#8217;s day is to get an internship at any firm and work your way to a full-time job. Managers will prefer in-house interns over external inexperienced candidates. That’s how I see people getting hired in my firm and others.</p><p><em><strong>But what to do if you’re already working in a non-data science or non-IT job with 5+ years of experience or even less?</strong></em></p><p>All those years of experience will be irrelevant when you go for a Data Science job. So before jumping ships please ask yourself the following two questions.</p><ol><li><em> Why do you want to be a data scientist?<br /></em><em>2. What is your expectation in terms of pay if you land a full-time job?</em></li></ol><p>Swapping from one domain to other has many disadvantages and you should have good reasons for that. I was teaching a candidate who had 5 years of experience as a java developer and was already earning something around 10 LPA which is very good in terms of Indian standards. When you learn a new skill you are starting fresh. So don’t expect high numbers.</p><p>I’m sure you can relate it to other professions. If you are a footballer and you want to play tennis you should not expect right away to play in the same field as the grand slam winners or earn like them. Data Science is no different.</p><p>That being said you can still make it to Data Science. I hear success stories every day of people transitioning from non-IT fields to Analytics and Machine Learning. I am one of them. I was a Civil Engineer with no coding experience and here I am working as a Data Scientist for one of the biggest consulting firms in the globe.</p><p><em><strong>So the main question If I’m a civil engineer with 5+ years of work ex. how do I utilize my experience?</strong></em></p><p>Step 1 — Fabricate your experience. Split it into 3+2. Sell a story like this. “I worked as full time … for the past three years and then I was heavily involved in analytics of raw materials/reinforcements/topography etc”</p><p>Step 2 — Back it up with working with some relevant projects. Here are few examples.<br />1. If you are working as transport/roadways designing a project where you’re trying to predict the vehicle density based on past data collected would be a nice one.<br />2. If you are involved in structural designing then predicting the compressive strength of the concrete based on features like cement, slag, ash, water, fine aggregates, etc.</p><p>I can go on with more examples but I hope you get the point. And for people belonging to any other industry, the aim is to show a project relevant to your current line of profession which can be used to make your current process more effective by increasing revenue or limiting losses, or by saving time.</p><p>Step 3 — Reach out to someone who is actively working in the field maybe someone like me and ask them to interview you. Ask them to grill with questions regarding the projects mentioned in step 2.</p><p><em><strong>Tip </strong></em><em>— Data cleaning is an integral aspect of Data Science. Talk to any data scientist they will tell you that 70–80% of their time goes into structuring their data. You can always express your love and desire to clean messy data.</em><em><br />This is something that does not need any experience and works well for beginners and experts and will certainly be appreciated by your interviewer.</em></p><h1><strong>Building your own brand</strong></h1><p>We’re in 2021 and every individual or business needs a professional presence. You should show your presence as well.</p><p>LinkedIn is a great way to help launch your career. It’s cheap and effective — if you have a strategy. Over the course of the last 3 years, I have grown my own brand a lot on LinkedIn and people reach out to me to check if I’m looking for a change or interested in taking up their job or be a part of their ventures.</p><p>This week my LinkedIn profile exploded and I also received job invites from people from my Network.</p><p>I’m at a place where I’m confident enough that if I make myself available to my network I will be getting a call from someone in my network. This is the modern way of job hunting.</p><p>The aim is to make people recognize you by your work. Engage with the community. Send connection requests to Data Scientists who are actively working in the field. Be polite and don’t randomly approach them to help with your questions or ask for a referral.</p><p><em><strong>Note:</strong></em><em> Building a good LinkedIn profile takes time it does not happen overnight so consistency is the key.</em></p><p>I also recommend all my mentees write blogs as they learn. Writing is the best way to validate your learning. And it also a trick to attract your recruiter to your point of strength. Wonder how? Let’s say you have written 5 blogs on Ensemble learning. Chances are you would be asked questions on the same. Projects and blogs are the 1st level of cross-questioning you can expect from a recruiter, they want to first test if you are confident about your own work and you should be able to answer them assuming you must be knowing about the topics you blog.</p><p>Lastly, do keep a track of all your exercises and projects in a GitHub repository. It acts like proof that you’ve actually worked on the project that you are talking about. Please note learning will be gradual and hence uploads in GitHub should also be timed.</p><p><strong>LinkedIn, Blogpost, and GitHub should be the 1st three things that go in your resume.</strong></p><h1><strong>Roadmap I recommend</strong></h1><p>Get yourself enrolled in a course. If possible offline. They say if you’re climbing a mountain, it’s better to do it with someone who has already done it. Keep in mind the following things before choosing a course.</p><ol><li><em> Trainers Profile — Always learn from some who has Industry Experience.<br />2. Course duration — Maximum 6 months.<br />3. Cost — Make sure you are not making a hole in the pocket.<br />4. Syllabus — Get the contents reviewed with someone who’s working in the field.</em></li></ol><p>I learned data science while working full time. I had opted for a course that at the time charged me 2.25 lacs INR (3025 USD). Back in the day’s resources and tutorials were very limited, so I don’t regret the decision. But, since I had invested big, I was determined to work hard and make something out of it. So I was able to remain consistent.</p><p>It is too much money for someone who is learning data science. I would recommend not investing anything more than 30k-35k INR (500–550 USD) in any course.</p><p> </p><p>Hope reading this blog was worth your time.</p><p>Good Luck on your journey to Data Scientist!</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section data-particle_enable="false" data-particle-mobile-disabled="false" class="elementor-section elementor-top-section elementor-element elementor-element-fb3cd9d elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="fb3cd9d" data-element_type="section" data-settings="{&quot;jet_parallax_layout_list&quot;:[],&quot;ekit_has_onepagescroll_dot&quot;:&quot;yes&quot;}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f01422d" data-id="f01422d" data-element_type="column">
			<div class="elementor-widget-wrap">
							</div>
		</div>
					</div>
		</section>
				</div>
		]]></content:encoded>
					
					<wfw:commentRss>https://peopledecode.com/just-enough-data-science/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
