<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Janet Kangogo</title>
    <description>The latest articles on DEV Community by Janet Kangogo (@janet_kangogo_83663d93af4).</description>
    <link>https://dev.to/janet_kangogo_83663d93af4</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4075811%2F7bfcda65-7763-4ae9-9535-5bad7da4e547.png</url>
      <title>DEV Community: Janet Kangogo</title>
      <link>https://dev.to/janet_kangogo_83663d93af4</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/janet_kangogo_83663d93af4"/>
    <language>en</language>
    <item>
      <title>Getting Started with Excel for Data Analytics: From Basics to Data Cleaning.</title>
      <dc:creator>Janet Kangogo</dc:creator>
      <pubDate>Wed, 02 Sep 2026 19:13:35 +0000</pubDate>
      <link>https://dev.to/janet_kangogo_83663d93af4/getting-started-with-excel-for-data-analytics-from-basics-to-data-cleaning-hii</link>
      <guid>https://dev.to/janet_kangogo_83663d93af4/getting-started-with-excel-for-data-analytics-from-basics-to-data-cleaning-hii</guid>
      <description>&lt;h1&gt;
  
  
  Introduction
&lt;/h1&gt;

&lt;p&gt;Excel is a useful tool for working with data, but before any analysis can begin, the data needs to be in a usable state. A dataset may have blank cells, duplicate records, inconsistent entries, or values that do not follow the expected format.&lt;/p&gt;

&lt;p&gt;Cleaning the data helps correct these issues and makes the dataset more consistent. Once the data is clean, it becomes easier to use Excel tools such as formulas, Pivot Tables, filters, and charts to analyze and understand the information.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Start With a Copy of the Data
&lt;/h2&gt;

&lt;p&gt;Before making any changes, keep the original dataset untouched and work from a duplicate sheet.&lt;/p&gt;

&lt;p&gt;Keeping the original data provides a reference point in case values are accidentally changed or removed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhe92ym4ak0hjuvvmxm1j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhe92ym4ak0hjuvvmxm1j.png" alt=" " width="799" height="286"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Make the Data Easier to Read
&lt;/h2&gt;

&lt;p&gt;Formatting makes a large dataset easier to inspect without changing the actual data.&lt;/p&gt;

&lt;h3&gt;
  
  
  Wrap Text
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Wrap Text&lt;/strong&gt; displays long content on multiple lines within the same cell.&lt;/p&gt;

&lt;h3&gt;
  
  
  AutoFit
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;AutoFit&lt;/strong&gt; automatically adjusts the width of a column or height of a row according to its contents.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgssx77fgalfzdukr7rw7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgssx77fgalfzdukr7rw7.png" alt=" " width="800" height="376"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Cleaning the Data
&lt;/h2&gt;

&lt;p&gt;Before analysing the data, it is important to check for issues that could affect the results. This includes missing values, inconsistent entries, duplicates, unnecessary columns, and values that do not make sense.&lt;/p&gt;

&lt;h3&gt;
  
  
  Missing and Inconsistent Values
&lt;/h3&gt;

&lt;p&gt;Missing information may appear as an empty cell or as values such as: &lt;code&gt;None&lt;/code&gt;, &lt;code&gt;N/A&lt;/code&gt;, &lt;code&gt;Unkown&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Some of these values are not technically blank because they contain text, but they may still represent missing information.&lt;/p&gt;

&lt;p&gt;The meaning of a value should be checked before changing it. For example, &lt;code&gt;None&lt;/code&gt; may represent missing information in one column but be a valid response in another.&lt;/p&gt;

&lt;p&gt;Where different entries have the same meaning, they can be standardized. For example, &lt;code&gt;None&lt;/code&gt;, &lt;code&gt;N/A&lt;/code&gt; can be changed to &lt;code&gt;Unkown&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This keeps the data consistent and makes it easier to analyse.&lt;/p&gt;

&lt;h3&gt;
  
  
  Handling Blank Values
&lt;/h3&gt;

&lt;p&gt;How a blank value is handled depends on the type of information in the column.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fes6vkgztmx18f6juh0zl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fes6vkgztmx18f6juh0zl.png" alt=" " width="392" height="691"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A blank may be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Left blank if the correct value is not known.&lt;/li&gt;
&lt;li&gt;Replaced with &lt;code&gt;Unknown&lt;/code&gt; for categorical data.&lt;/li&gt;
&lt;li&gt;Filled with an appropriate value where its meaning is known.&lt;/li&gt;
&lt;li&gt;Investigated further before making any changes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For numerical columns, adding text such as &lt;code&gt;Unknown&lt;/code&gt; should be avoided because it can interfere with calculations.&lt;/p&gt;

&lt;h3&gt;
  
  
  Checking for Duplicates
&lt;/h3&gt;

&lt;p&gt;Duplicate records can affect totals, counts, averages, and other calculations.&lt;/p&gt;

&lt;p&gt;It is safer to select the entire dataset when removing duplicates, as similar records may contain typos or inconsistencies.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsffremx9emienm5mhtf1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsffremx9emienm5mhtf1.png" alt=" " width="800" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Checking for Unusual Values
&lt;/h3&gt;

&lt;p&gt;The dataset should also be checked for values that do not make sense when compared with other information in the same record.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;Hiring Year: 1920&lt;br&gt;
Age: 50&lt;/p&gt;

&lt;p&gt;Both are valid numbers, but they are unlikely to make sense together.&lt;/p&gt;

&lt;p&gt;Unusual values should be investigated rather than automatically deleted because some may be genuine.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1q8isltgpkouowy8sykp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1q8isltgpkouowy8sykp.png" alt=" " width="444" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After these checks, the dataset is more consistent and ready for validation and further analysis.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Filters
&lt;/h2&gt;

&lt;p&gt;Once the dataset has been cleaned, filters can be used to view specific records without deleting or changing the rest of the data.&lt;/p&gt;

&lt;p&gt;For example, the HR dataset can be filtered by:&lt;br&gt;
Work Experience = 7 Years&lt;br&gt;
Education Level = Bachelors&lt;br&gt;
Employment Type = Permanent&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1u0n9s1djvqkh19x1vcc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1u0n9s1djvqkh19x1vcc.png" alt=" " width="800" height="239"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Filters are useful when checking particular categories, identifying unusual records, or focusing on a smaller part of a large dataset.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Multilevel Sorting
&lt;/h2&gt;

&lt;p&gt;Sorting arranges data in a particular order. Excel also allows sorting by more than one column.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm9rq8wis7qs6d7elwsos.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm9rq8wis7qs6d7elwsos.png" alt=" " width="800" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For example, the dataset can be sorted by:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Work Experience&lt;/li&gt;
&lt;li&gt;Education Level&lt;/li&gt;
&lt;li&gt;Employment Type&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Excel first sorts by Work Experience, then by Education Level within each department, and finally by Employment Type&lt;/p&gt;

&lt;p&gt;This is known as &lt;strong&gt;multilevel sorting&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fl1e2u73j0k0wxhtj0nhl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fl1e2u73j0k0wxhtj0nhl.png" alt=" " width="800" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Text Functions
&lt;/h2&gt;

&lt;p&gt;Excel provides several functions for working with text. These can be useful when cleaning names, codes, email addresses, and other text fields.&lt;/p&gt;

&lt;p&gt;Functions always start with the equal sign i.e &lt;code&gt;=&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;LEN()&lt;/code&gt; – Counts the number of characters in a cell.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;TRIM()&lt;/code&gt; – Removes extra spaces from text.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;LEFT()&lt;/code&gt; – Extracts characters from the left side of text.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;RIGHT()&lt;/code&gt; – Extracts characters from the right side of text.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;MID()&lt;/code&gt; – Extracts characters from the middle of text.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;FIND()&lt;/code&gt; – Finds the position of a character or text within a cell.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;CONCAT()&lt;/code&gt; – Joins text from multiple cells together.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These functions can be used individually or combined depending on how the text needs to be cleaned or changed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqkeky2dy3zir19qk4hpa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqkeky2dy3zir19qk4hpa.png" alt=" " width="800" height="157"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Conditional Formatting
&lt;/h2&gt;

&lt;p&gt;Conditional Formatting changes the appearance of cells when they meet certain conditions. This makes it easier to notice important or unusual values.&lt;/p&gt;

&lt;p&gt;Common conditions include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Greater than&lt;/li&gt;
&lt;li&gt;Less than&lt;/li&gt;
&lt;li&gt;Between&lt;/li&gt;
&lt;li&gt;Top 10&lt;/li&gt;
&lt;li&gt;Bottom 10&lt;/li&gt;
&lt;li&gt;Above average&lt;/li&gt;
&lt;li&gt;Below average&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F23rxgvtngz5gg1tosnng.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F23rxgvtngz5gg1tosnng.png" alt=" " width="800" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For example, employees who have worked for less than 18 years can be highlighted automatically.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbndd0epu3reuu4ij2j7c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbndd0epu3reuu4ij2j7c.png" alt=" " width="799" height="200"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Data Bars provide another way of comparing numerical values. Excel displays a bar inside each cell based on the size of the value.&lt;/p&gt;

&lt;p&gt;Larger values have longer bars, making differences easier to see without creating a separate chart.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvkjikuaupmyd28kmgzpv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvkjikuaupmyd28kmgzpv.png" alt=" " width="800" height="295"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  8. Statistical and Mathematical Functions
&lt;/h2&gt;

&lt;p&gt;These are for carrying out basic calculations and understanding numerical data.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;POWER()&lt;/code&gt; – Raises a number to a specified power.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;SQRT()&lt;/code&gt; – Returns the square root of a number.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;PRODUCT()&lt;/code&gt; – Multiplies numbers together.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;MIN()&lt;/code&gt; – Returns the smallest value.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;MAX()&lt;/code&gt; – Returns the largest value.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;MODE()&lt;/code&gt; – Returns the most frequently occurring value.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;MEDIAN()&lt;/code&gt; – Returns the middle value.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;COUNT()&lt;/code&gt; – Counts cells containing numbers.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;COUNTA()&lt;/code&gt; – Counts non-empty cells.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;COUNTBLANK()&lt;/code&gt; – Counts empty cells.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These functions provide a quick way of understanding the values contained in a dataset.&lt;/p&gt;

&lt;h2&gt;
  
  
  9. COUNTIF() &amp;amp; SUMIF()
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;COUNTIF()&lt;/code&gt; and &lt;code&gt;SUMIF()&lt;/code&gt; are useful for counting or adding values based on specific conditions in a dataset.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;COUNTIF()&lt;/code&gt; – Counts records that meet one condition.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;COUNTIFS()&lt;/code&gt; – Counts records that meet multiple conditions.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;SUMIF()&lt;/code&gt; – Adds values that meet one condition.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;SUMIFS()&lt;/code&gt; – Adds values that meet multiple conditions.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  10. Working With Dates and Time
&lt;/h2&gt;

&lt;p&gt;Dates are useful in data analysis because they can be used to calculate periods and identify trends.&lt;/p&gt;

&lt;p&gt;Some common Excel date functions include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;TODAY()&lt;/code&gt; – Returns the current date.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;NOW()&lt;/code&gt; – Returns the current date and time.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;YEAR()&lt;/code&gt; – Extracts the year from a date.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;MONTH()&lt;/code&gt; – Extracts the month from a date.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;DAY()&lt;/code&gt; – Extracts the day from a date.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;DATEDIF()&lt;/code&gt; – Calculates the difference between two dates.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;NETWORKDAYS()&lt;/code&gt; – Calculates working days between two dates, excluding weekends.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  11. Mean, Median, and Outliers
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;mean&lt;/strong&gt; is the average of a group of numbers, while the &lt;strong&gt;median&lt;/strong&gt; is the middle value when the numbers are arranged in order.&lt;/p&gt;

&lt;p&gt;Consider the below example:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe5y9280gckrp9fm583pr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe5y9280gckrp9fm583pr.png" alt=" " width="799" height="334"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The value &lt;code&gt;500,000&lt;/code&gt; is much higher than the other values. This affects the mean because it pulls the average upwards.&lt;/p&gt;

&lt;p&gt;The median is less affected by extremely high or low values.&lt;/p&gt;

&lt;p&gt;Comparing the mean and median can therefore help identify data that may be skewed or contain possible outliers.&lt;/p&gt;

&lt;p&gt;An outlier should not automatically be deleted. It may be an incorrect entry, but it could also be a genuine value that is simply different from the rest.&lt;/p&gt;

&lt;h2&gt;
  
  
  IMPORTANT: Data Validation
&lt;/h2&gt;

&lt;p&gt;Data Validation helps control what can be entered into a cell. This reduces inconsistent entries and helps keep the dataset clean when inputted at the data collection step.&lt;/p&gt;

&lt;p&gt;For example, if the Department column should contain only &lt;code&gt;HR&lt;/code&gt;, &lt;code&gt;IT&lt;/code&gt;, &lt;code&gt;Finance&lt;/code&gt; or &lt;code&gt;Unknown&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2caelo7oeze16c946ti6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2caelo7oeze16c946ti6.png" alt=" " width="800" height="371"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;a dropdown list can be created to restrict entries to these values.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fc807aurj1190pwtrqxte.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fc807aurj1190pwtrqxte.png" alt=" " width="396" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Without data validation, the same department could be entered in different ways. Excel would treat these entries as different values, creating inconsistencies and adding more data cleaning tasks.&lt;/p&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;The main takeaway is that good analysis starts with clean data. Preparing and cleaning the data makes it easier to work with and analyse.&lt;/p&gt;

</description>
      <category>data</category>
      <category>datascience</category>
      <category>excel</category>
    </item>
    <item>
      <title>Understanding the Git Workflow: Working Directory, Staging, Commit and Push</title>
      <dc:creator>Janet Kangogo</dc:creator>
      <pubDate>Mon, 24 Aug 2026 17:50:30 +0000</pubDate>
      <link>https://dev.to/janet_kangogo_83663d93af4/understanding-the-git-workflow-working-directory-staging-commit-and-push-3fhp</link>
      <guid>https://dev.to/janet_kangogo_83663d93af4/understanding-the-git-workflow-working-directory-staging-commit-and-push-3fhp</guid>
      <description>&lt;p&gt;Git is used to track changes made to files in a project. The basic Git workflow has four main parts:&lt;/p&gt;

&lt;p&gt;Working Directory → Staging Area → Commit → Push&lt;/p&gt;

&lt;p&gt;A simple project can contain different types of files, for example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;hello.py&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;practice.sql&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;README.md&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The same Git workflow can be used for all these files.&lt;/p&gt;

&lt;h2&gt;
  
  
  Working Directory
&lt;/h2&gt;

&lt;p&gt;The working directory is where the project files are created and edited.&lt;/p&gt;

&lt;p&gt;For example, &lt;code&gt;hello.py&lt;/code&gt; can contain:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzd3eeqqm570wwz46w082.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzd3eeqqm570wwz46w082.png" alt=" " width="799" height="86"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A SQL file can contain:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyow10apoadjnzzhf12gs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyow10apoadjnzzhf12gs.png" alt=" " width="795" height="80"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And &lt;code&gt;README.md&lt;/code&gt; can contain:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmp6l9zkw57fa02qk91tg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmp6l9zkw57fa02qk91tg.png" alt=" " width="800" height="139"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When a file is changed, Git can detect the change.&lt;/p&gt;

&lt;p&gt;The current state of the project can be checked using:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git status
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It can show modified and untracked files, staged and unstaged changes, as well as the current branch.&lt;/p&gt;

&lt;p&gt;The output can show something like:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9pz8pl9tbxem9v4nodtr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9pz8pl9tbxem9v4nodtr.png" alt=" " width="800" height="257"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Which means the file has been changed, but the change has not been staged yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  Staging Area
&lt;/h2&gt;

&lt;p&gt;The staging area is used to select the changes that should go into the next commit.&lt;/p&gt;

&lt;p&gt;To stage &lt;code&gt;hello.py&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git add hello.py
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;On checking git status, the output can show something like:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe4i17iyv4g1w3io1hf30.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe4i17iyv4g1w3io1hf30.png" alt=" " width="799" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;More than one file can also be staged:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git add hello.py practice.sql
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To stage all the changes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git add .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fi7flp26basr04bxntejr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fi7flp26basr04bxntejr.png" alt=" " width="799" height="263"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Note that: Not every change has to be included in the same commit.&lt;/p&gt;

&lt;h2&gt;
  
  
  Commit
&lt;/h2&gt;

&lt;p&gt;After staging the required changes, a commit can be created:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git commit -m "Your Commit Message"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcsla2eab93pr9fe174wi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcsla2eab93pr9fe174wi.png" alt=" " width="800" height="158"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A commit records the staged changes in the local Git repository.&lt;/p&gt;

&lt;p&gt;The message after &lt;code&gt;-m&lt;/code&gt; describes the change.&lt;/p&gt;

&lt;p&gt;The commit history can be checked using:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git log
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This shows the commits that have already been made.&lt;/p&gt;

&lt;h2&gt;
  
  
  Create a repository on Github
&lt;/h2&gt;

&lt;p&gt;A repository should be created on GitHub where the project would be pushed.&lt;br&gt;
The GitHub repository acts as the remote repository for the project.&lt;/p&gt;

&lt;p&gt;On GitHub, New repository or the “+” icon was selected, then a name and description were added before creating the repository.&lt;/p&gt;
&lt;h2&gt;
  
  
  Push
&lt;/h2&gt;

&lt;p&gt;A commit is stored in the local repository. It does not automatically go to GitHub.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Push:&lt;/strong&gt; Sends committed changes from the local repository to the remote repository, such as GitHub, using &lt;code&gt;git push&lt;/code&gt; or &lt;code&gt;git push origin main&lt;/code&gt; to specify the remote (&lt;code&gt;origin&lt;/code&gt;) and branch (&lt;code&gt;main&lt;/code&gt;).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3nvsqudn98thznmhh698.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3nvsqudn98thznmhh698.png" alt=" " width="799" height="203"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  End Result
&lt;/h2&gt;

&lt;p&gt;When you refresh git hub, the repository is updated&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6kudmzxt48i8a6h1bgo4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6kudmzxt48i8a6h1bgo4.png" alt=" " width="800" height="290"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  The Full Workflow
&lt;/h2&gt;

&lt;p&gt;The Git workflow can be shown as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Working Directory &amp;gt; git add &amp;gt; Staging Area &amp;gt; git commit&amp;gt; Local Repository &amp;gt; git push &amp;gt; Remote Repository (GitHub)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;The Git workflow shows how changes move from the working directory to GitHub. The changes are checked using git status, added using git add, committed using git commit, and then pushed using git push.&lt;/p&gt;

</description>
      <category>git</category>
      <category>github</category>
      <category>gitworkflow</category>
    </item>
  </channel>
</rss>
