<?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: Mburu Kibandi</title>
    <description>The latest articles on DEV Community by Mburu Kibandi (@mburu_kefoi).</description>
    <link>https://dev.to/mburu_kefoi</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%2F4090370%2F8602e211-804a-46a4-a60d-addc6f290344.jpg</url>
      <title>DEV Community: Mburu Kibandi</title>
      <link>https://dev.to/mburu_kefoi</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mburu_kefoi"/>
    <language>en</language>
    <item>
      <title>Building an Interactive Excel Dashboard For E-Commerce Product Analysis:A Case Study of Jumia Products</title>
      <dc:creator>Mburu Kibandi</dc:creator>
      <pubDate>Mon, 07 Sep 2026 11:52:57 +0000</pubDate>
      <link>https://dev.to/mburu_kefoi/building-an-interactive-excel-dashboard-for-e-commerce-product-analysisa-case-study-of-jumia-2jgk</link>
      <guid>https://dev.to/mburu_kefoi/building-an-interactive-excel-dashboard-for-e-commerce-product-analysisa-case-study-of-jumia-2jgk</guid>
      <description>&lt;h2&gt;
  
  
  Project Introduction
&lt;/h2&gt;

&lt;p&gt;An analysis project turning Jumia product data into useful pricing,promotion and customer-engagement insights.The project will help us understand how price,promotions and customer feedback influence product performance.&lt;/p&gt;

&lt;h3&gt;
  
  
  Project Objectives
&lt;/h3&gt;

&lt;p&gt;By the end of  this project we should be able to understand and explain :&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Whether large discounts are associated with more reviews&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Whether highly rated products attract stronger engagement&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Which products perform best based on ratings and reviews&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Whether price and rating move together&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Which products may need a different strategy or marketing&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Dataset And Data Quality Audit
&lt;/h3&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%2Fdrxezth95kkioirusmow.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%2Fdrxezth95kkioirusmow.png" alt="Raw Data" width="800" height="888"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Our dataset above is made up of 6 columns namely;Product,Current Price,Old Price,Discount,Ratings and Reviews.It consist of 116 different rows.&lt;/p&gt;

&lt;p&gt;The data had no blanks for product,current price,discount and old price fields.It instead had a total of 58 blanks for both ratings and reviews.There were 3 exact duplicates reducing blank count to 55 for both ratings and reviews.&lt;/p&gt;

&lt;p&gt;They were no ratings above 5 or below 0 neither were they discounts outside the range of 0-100&lt;/p&gt;

&lt;h3&gt;
  
  
  Cleaning and Preparation Decisions.
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Cleaning
&lt;/h4&gt;

&lt;p&gt;Kudos to our data scientists because generally our data was clean except for minor changes.We did trim the product field removing extra spaces before the products.&lt;/p&gt;

&lt;p&gt;Current and old prices had their fields formatted as text so we went ahead to remove KSh,removed commas and extra spaces and formatted as currency aligning both fields to the right&lt;/p&gt;

&lt;p&gt;For the ratings field we removed 'out of 5' as generally ratings are always from 0 to 5.For the blank rows in ratings and reviews, we decided to totally leave them as blank as opposed to filling them as zeros because ideally zero would have translated to poor rather than "Not Reviewed" or "Not rated"&lt;/p&gt;

&lt;p&gt;Generally for the bigger part of cleaning work was actually getting to change the fields data type.&lt;/p&gt;

&lt;h4&gt;
  
  
  Preparations
&lt;/h4&gt;

&lt;p&gt;Enriching data to me is always the first step to analysis.Data enrichment will provide enhanced analytical depth,higher data accuracy and integrity and  improved decision making&lt;/p&gt;

&lt;p&gt;For our Jumia dataset, we did add numerous fields to help make our analysis easier.We checked for any abnormalities in our data and had them recorded&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Is our current price greater than our old price for any rows ?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Do we have rows that have missing values for discount,do we have rows that have discount outside the range of 0-100 ?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Do we have rows that have missing values for ratings,do we have any ratings outside the range of 0-5 ?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The above questions resulted to three additional fields for checking prices,discount and ratings.We went ahead to categorise prices,ratings and discount such that &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;For every rate given below 3,excel was to return poor,between 3 and 4 were classified as average and excellent for rates above 4&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;We had low discount being any value below 20%,medium discount being values ranging between 20% and 40% and high discount as values from 40%&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;For prices, we did create a threshhold to be able to group the prices.We had first quartile as the maximum for low prices and our third quartile as our minimum for high prices&lt;/p&gt;&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%2Fwoz3p1wxi13xdmpn2v28.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%2Fwoz3p1wxi13xdmpn2v28.png" alt="Cleaned Data" width="800" height="435"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Excel Formulas
&lt;/h3&gt;

&lt;p&gt;These are some of the excel formulas we used to do cleaning and preparation of our data&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;=TRIM()
=IF(OR([@Ratings]&amp;lt;0,[@Ratings]&amp;gt;5,ISBLANK[@Ratings]),"Check Rating","Ok")
=IF(OR([@Current Price] &amp;gt; [@Old Price]),"Check Price',"Ok")
=IF(OR([@Discount]&amp;lt;0%,[@Discount]&amp;gt;100%,ISBLANK[@Discount]),"Check Discount","Ok")

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For categorising our prices,discount and ratings we used&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;=IF(ISBLANK([@Ratings]),"Missing Rating",IF([@Ratings]&amp;lt;3,"Poor",IF([@Ratings]&amp;lt;4,"Average","Excellent")))
=IF[@Discount),"Missing Discount",IF([@Discount]&amp;lt;20%,"Low Discount",IF([@Discount]&amp;lt;40%,"Medium Discount","High Discount"))
=IF([@Current Price]&amp;lt;Price_Q1,"Low Prices",IF([@Current Price]&amp;lt;Price_Q3,"Medium Prices","High Prices"
Price_Q1=QUARTILE.INC(tblproducts[Current Price],1)
Price_Q3=QUARTILE.INC(tblproducts[Current Price],3)

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Engagement and performance flags
&lt;/h4&gt;

&lt;p&gt;We did define a rule using percentile and created flags for &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;high discount and low rating&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;high discount and low engagement&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;many reviews and average rating; and &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;strong engagement and excellent rating&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For high discount,strong engagement,low engagement and rating we used the following formulas to create our threshold&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;strong_engage =PERCENTILE.INC(tblproducts[@Review],0.75)
low_engage    =PERCENTILE.INC(tblproducts[@Review],0.25)
high_discount =PERCENTILE.INC(tblproducts[@Discount],0.75)
low_discount  =PERCENTILE.INC(tblproducts[@Discount],0.25)
average       =AVERAGE(tblproducts[@Rating])
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Our thresholds helped us find if there were products with high discount and low rating,high discount and low engagement or even many reviews and average rating.&lt;/p&gt;

&lt;h3&gt;
  
  
  PivotTables And Analysis
&lt;/h3&gt;

&lt;p&gt;A pivot table is simply a data tool used to instantly group,aggregate and transform data.Pivottables can be actually be used to create pivotcharts that are used for visualizations.Visualization is actually a summary of our analysis&lt;/p&gt;

&lt;p&gt;For our Jumia dataset we did create different pivottables such as rating mix,discount mix,price vs  rating,engagement by discount,discount vs reviews.These pivottables actually helped us to findings and some recommendations&lt;/p&gt;

&lt;p&gt;We did analyse correlation between discount vs reviews,ratings vs reviews and current price vs rating.Unfortunately or fortunately there were only weak correlations for all three meaning none of them variables change together.It is important to note that correlation is not causation.&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%2Fa31gx9ylc93xtd8zfu5q.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%2Fa31gx9ylc93xtd8zfu5q.png" alt="Analysis" width="800" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here is also a picture of our dashboard&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%2F4u103g5yvl4cxkl16nhg.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%2F4u103g5yvl4cxkl16nhg.png" alt="Dashboard" width="800" height="435"&gt;&lt;/a&gt;&lt;br&gt;
You notice that on the far left side of our dashboard we have table like structures that are not necessarily charts.They are called slicers and generally used to filter data.You might actually need more than one slicer for your dashboard and it is also important to note that you need to have them connected in order for one change to affect all charts&lt;/p&gt;

&lt;h4&gt;
  
  
  How do you connect slicers ?
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Right click the slicer&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A dropdown appears that you click on report connections&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You then proceed to select all pivottables you created&lt;br&gt;
&lt;strong&gt;Note&lt;/strong&gt;&lt;br&gt;
It is very important to note that if when creating your pivottables, you did click on add data to this data model in order to create on the existing worksheet,then your slicers simply won't work.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Findings And Recommendations
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Findings
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;A lot of products had their rates as missing&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Most products have been rated excellent,followed closely by average then lastly poor&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Most products had high discount of above 40%&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Most highly rated products are products with high prices&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Products with medium discount received the most reviews of 351,products with high discount received 334 reviews and products with low discount received 38 reviews&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Recommendations
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Maintain the good quality,good customer services for the highly rated products&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;We also need to know the kind of reviews(good or bad) our customer gives back to be able to enrich what we can find from our data.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;[ (&lt;a href="https://github.com/MburuKefoi/Jumia_Product_Performance_Dashboard" rel="noopener noreferrer"&gt;https://github.com/MburuKefoi/Jumia_Product_Performance_Dashboard&lt;/a&gt;) ]&lt;/p&gt;

&lt;p&gt;In an effort to keep this article fun and short,above is my link to the file so that you can check it out &lt;/p&gt;

</description>
      <category>analysis</category>
      <category>data</category>
      <category>datascience</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Excel For Data Analytics</title>
      <dc:creator>Mburu Kibandi</dc:creator>
      <pubDate>Sun, 30 Aug 2026 07:05:43 +0000</pubDate>
      <link>https://dev.to/mburu_kefoi/excel-for-data-analytics-gmd</link>
      <guid>https://dev.to/mburu_kefoi/excel-for-data-analytics-gmd</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Excel is a spreadsheet operator developed by Microsoft and used by different operating systems.It features a wide variety of tools from computational tools to graphical tools,infact Excel 2016 has up to 484 functions used to perform different tasks.It is undoubtedly one of the most powerful applications used in Data Analytics&lt;/p&gt;

&lt;h3&gt;
  
  
  Features of Excel
&lt;/h3&gt;

&lt;p&gt;Data in Excel is stored in a spreadsheet.A spreadsheet is a table made up of rows and columns.A collection of many spreadsheets form a workbook. &lt;/p&gt;

&lt;p&gt;A row in a spreadsheet is labelled with numbers i.e 1,2,3 whereas a column is letter labelled from A,B,C...&lt;/p&gt;

&lt;p&gt;The intersection of rows and columns form cells where information is stored,a cell in excel is therefore identified by the row and column header e.g A1,C5. This cell name is usually displayed in the name box,shown at the top left of your screen&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%2Fzigm85d0grqyihyhlecm.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%2Fzigm85d0grqyihyhlecm.png" alt="Excel Workbook 1" width="800" height="399"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When you open your workbook,you are met with a command bar interface at the top of your window that we call ribbons.Ribbons categorises tools into logical operations for easy access of formatting tools,data management tools and graphical tools.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ribbon Structure&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Tabs: Top level headers on top of your screen (File,Home,Insert,Draw...)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Groups:Tabs' sub-sections that appears when you click on tabs,they usually display various tools i.e Font,Alignment,Data Types,Sort&amp;amp;Filter&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Command Buttons:A variety of buttons that execute commands when clicked upon.Some buttons will reveal lists of selectable choices one can choose from e.g Font Size,Number Format,Conditional Formatting&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Data Types
&lt;/h3&gt;

&lt;h4&gt;
  
  
  What are Data Types ?
&lt;/h4&gt;

&lt;p&gt;Data Types refer to simply the type of text one can input in a cell.Excel typically allows different types of data types as discussed below&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Text(String) : Alphanumeric characters or words.Excel aligns text data type to the left by default&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Number : Salaries,Age,Quantities or Counts.Excel aligns numeric data types to the right.We have different number formats in excel that changes how values look in your screen i.e Currencies,General,Date&amp;amp;Time&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Date &amp;amp; Time : Another data type used to record dates.Dates in excel are stored sequentially from 1st January 1900 which is recorded as one,the reason behind being to make mathematical operations fast&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Formulas : Different type of functions used to perform computational and logical operations.It is easier to use SUM formulae to find totals than manually having to add them together.To write a formulae ,you start by an equal sign&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Boolean : Logical operations that return True or False&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Data Cleaning
&lt;/h3&gt;

&lt;p&gt;Data imported as a csv file generally requires some cleaning.Once or twice you may find some clean data that requires no cleaning.Data cleaning involves you checking for the correct data type,expanding your fields or filling in some blanks.Cleaning your data prepares it for different formatting.&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%2Fn9suytivqxarhv7373k5.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%2Fn9suytivqxarhv7373k5.png" alt="Raw Data " width="784" height="648"&gt;&lt;/a&gt;&lt;br&gt;
Above is an image showing how raw data often looks like.&lt;/p&gt;

&lt;p&gt;The best way of cleaning your data is by first checking up for errors. Looking at our data we can see that current and old price fields both have the numbers aligned to the left as text as opposed to the right.It is also evident that review and ratings fields do have blanks.Apart from those minor errors our data is majorly clean&lt;/p&gt;

&lt;p&gt;We can start by highlighting the whole workbook then under home tab,look for format,usually a dropdown will appear if you click on it and then you can choose Autofit Column Width to expand our fields.Ideally we can do this manually by having our "cross-like" pointer between fields but it will take a lot of time&lt;/p&gt;

&lt;p&gt;Just after formatting your column width,highlight your workbook and under home tab,apply filter&lt;br&gt;
Your excel should primarily look like this&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%2Fwhvxnw3higiz8y4iaw47.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%2Fwhvxnw3higiz8y4iaw47.png" alt="Cleaning " width="800" height="410"&gt;&lt;/a&gt;&lt;br&gt;
You can change the headings to be bold and add some background colour to make it more visible.&lt;/p&gt;

&lt;p&gt;First things first,we need to remove duplicates from our dataset,we will highlight our workbook and under data tab choose remove duplicates from data tools.Excel will pop up a message of how many unique values are left.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NOTE&lt;/strong&gt; : The easiest way of highlighting the whole workbook is by clicking on the triangle on top of your first row&lt;/p&gt;

&lt;h4&gt;
  
  
  Cleaning your Data
&lt;/h4&gt;

&lt;p&gt;Here are some quick steps on how to clean your current and old price fields&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Highlight column "Current Price" by clicking on your column header&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ctrl + H will pop up Find and Replace dialog box,where you can ask your PC to find KSh and for now do not replace with anything.Leave the replace input box empty.Click on Replace All to Replace&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Highlight column "Current Price"&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Under Home tab,Find the Group Number and click on the arrow,change the type of your number to currency then choose 'KES' as Kenyan symbol&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Your column should have your data aligned to the left.Redo the same for Old Price field&lt;/p&gt;

&lt;p&gt;For reviews and ratings,here is how to best clean your data&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Click on the filter symbol&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sort your data from largest to smallest,sorting your data prompts your PC to have the cells with errors to come first,this often is the easiest method for finding errors because some datasets can be very large &lt;br&gt;
For our data sorting doesn't have the blanks coming first ,so&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Highlight the column "Reviews"&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ctrl + H for the Find and Replace dialog box,leave the find input box as blank and type Unknown in the replace input box&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Do the same for ratings and discount fields&lt;/p&gt;&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%2Fzu7p9n8ltb5m6kvohjzm.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%2Fzu7p9n8ltb5m6kvohjzm.png" alt="Cleaned" width="799" height="390"&gt;&lt;/a&gt;&lt;br&gt;
Above is our cleaned data&lt;/p&gt;

&lt;p&gt;This data has been generally clean and did not need too much changes.For some dataset with numerous fields,cleaning will surely take some time.For instance,some data will have different words to mean the same thing e.g NYC and New York City in  different cells.We can even encounter misspellings.It is important we correct to have one word to have one meaning all through&lt;/p&gt;

&lt;p&gt;For such cases we;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Ctrl + H for the Find and Replace dialog box and type New York City in the find input box and replace it with NYC&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click on Replace All to Replace.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some datasets will have names of people in different cases.You may find some surnames are written in uppercase where as the first names are written in lowercase.We need to change the names to proper cases and here we will invoke text functions&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Text Functions&lt;/strong&gt;&lt;br&gt;
We have different text functions that transform data differently&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Upper : Upper function will change the data to uppercase.Usually written as "=UPPER(cell address)"&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Lower : Lower function will change data to lowercase.Usually written "=LOWER(cell address)"&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Proper : Proper function changes your data to proper case,where the first letter of your word is capital and the rest small e.g John.To invoke this function "=PROPER(cell address)" &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Incase you find yourself where you have to format names then follow these steps&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Highlight the column,right click and insert two new columns &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Type out the respective formula you want in one column&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Copy the result of column1 and paste special to column2&lt;br&gt;
We choose the option of pasting values inorder to be able to delete the column the formula we are referencing otherwise when we don't paste values and delete the column we are referencing,our new column will return an error. &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Data Validation
&lt;/h3&gt;

&lt;p&gt;Data validation helps to restrict what data can be entered.It is usually useful when data entry has not been done.Data validation tool is under the Data tab&lt;br&gt;
To validate data,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Highlight the column&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Under data tab,select data validation,a dropdown of options usually appears and you can choose data validation&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A dialog box pops up that has two input boxes,Allow and Data.You can choose list from the list that appears when you click on the arrow at the end of the allow input box and type the entries you want allowed in the source input box.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click Ok &lt;/p&gt;&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%2Fzokwcalsxfnemrzmnx0w.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%2Fzokwcalsxfnemrzmnx0w.png" alt="Data Validation" width="800" height="711"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;In a nutshell,data cleaning is just finding errors,removing duplicates and missing values in a dataset to make it accurate and ready for analysis.Excel does this perfectly&lt;/p&gt;

</description>
    </item>
    <item>
      <title>A GitHub Project Using Git</title>
      <dc:creator>Mburu Kibandi</dc:creator>
      <pubDate>Sun, 23 Aug 2026 06:48:06 +0000</pubDate>
      <link>https://dev.to/mburu_kefoi/a-github-project-using-git-20dc</link>
      <guid>https://dev.to/mburu_kefoi/a-github-project-using-git-20dc</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;GitHub&lt;/strong&gt; is a developer platform that allows developers to create,store and manage their code.It provides access control,bug tracking and task management for every project. &lt;strong&gt;Git&lt;/strong&gt; is a system used to handle everything from small to large projects. &lt;strong&gt;GitHub&lt;/strong&gt; uses &lt;strong&gt;Git&lt;/strong&gt; as its distributed version control.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step by step guide
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Creating a folder
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;In your git version,type&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;pwd(print working directory)&lt;br&gt;
pwd will basically tell you the absolute path for your directory.It is usually essential to know in order to be able to navigate to the right directory&lt;/p&gt;
&lt;/blockquote&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%2Frn84w84v1s38bofguqs6.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%2Frn84w84v1s38bofguqs6.png" alt="pwd command" width="306" height="64"&gt;&lt;/a&gt;&lt;br&gt;
  From the image above,my pc path is from C to Users to HP&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;In order to navigate to the right directory we are going to run the cd command.Cd which stands for change directory will change your directory to your preferred directory.In this case we will cd to desktop where we store our files&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In the Desktop directory we can now create a folder that we intend to push to GitHub.Git uses the command mkdir(make directory) to create a folder.Lets name the folder "My GitHub Project"&lt;br&gt;
&lt;em&gt;(When you check your File Explorer you will find a new folder named My GitHub Project)&lt;/em&gt;&lt;br&gt;
We wish to create another folder 'data',this folder should be a subfolder inside My GitHub Project.To do this,we cd to the parent folder and then run the mkdir command &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;For our GitHub project, we need a README markdown file that normally gives a brief explanation of what the project is about.It is usually the face of the project.To create a README file we run the command touch README.md&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;We want to add a brief description of what the project is about.&lt;br&gt;
To add the description we are going to use the echo command,below is a screenshoot of how to write the command&lt;/p&gt;&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%2Fluv4n9307sne304tqw50.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%2Fluv4n9307sne304tqw50.png" alt="echo commands" width="799" height="247"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;NOTE:&lt;/strong&gt; &lt;br&gt;
We use a single greater sign to overwrite what we have in the README file and use double greater sign to add to what is in the file&lt;br&gt;
Below is an image of what we've done till now&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%2Fbrfx3c0f255cye8izs59.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%2Fbrfx3c0f255cye8izs59.png" alt="key" width="800" height="905"&gt;&lt;/a&gt;&lt;br&gt;
The cat(concatenate) command read files and print them directly as they appear&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To copy data that should be analysed we can run&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;cp ~/Downloads/MOCK_DATA.csvdata/&lt;/code&gt;&lt;br&gt;
where &lt;br&gt;
"/Downloads/MOCK_DATA.csv" is the source and data/ is the destination&lt;/p&gt;

&lt;h5&gt;
  
  
  Pushing to GitHub
&lt;/h5&gt;

&lt;p&gt;We now have our folder and we can now push it to GitHub&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Run the command git init that creates an empty repository in git,it allows git to start watching file changes,tracking history and managing branches&lt;br&gt;
When you run the git init command the PC returns "Initialized empty repository..."&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;We then run git status command,a command that shows what git sees&lt;br&gt;
The PC returns "nothing added to commit but untracked files present"&lt;br&gt;
We now run &lt;br&gt;
&lt;code&gt;git add .&lt;/code&gt;&lt;br&gt;
git add prepares changes for the next commit&lt;br&gt;
Now when you run&lt;br&gt;
&lt;code&gt;git commit -m "Add commit message"&lt;/code&gt;&lt;br&gt;
Git now saves changes to the git repository&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The next step is to check our branch and ensure its under main branch.If your run git branch and the PC returns master,then you have to rename it to main by running&lt;br&gt;
&lt;code&gt;git branch -m main&lt;/code&gt;&lt;/p&gt;&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%2Fnosc507b55tvc5v2j0bp.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%2Fnosc507b55tvc5v2j0bp.png" alt="git commands" width="800" height="543"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Log in your GitHub and create a repository and copy your SSH key,then navigate back to your git version and the following commands&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%2Fihcdirf6r35lxfcbkqb7.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%2Fihcdirf6r35lxfcbkqb7.png" alt="pushing to github" width="767" height="215"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can finally run &lt;code&gt;git push -u origin main&lt;/code&gt; and enter your GitHub passphrase to push to GitHub.&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
  </channel>
</rss>
