<?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: Antonina Wambui</title>
    <description>The latest articles on DEV Community by Antonina Wambui (@analystnina).</description>
    <link>https://dev.to/analystnina</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%2F4084610%2F507903d0-90c1-46a7-8862-59fed3c355c8.jpg</url>
      <title>DEV Community: Antonina Wambui</title>
      <link>https://dev.to/analystnina</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/analystnina"/>
    <language>en</language>
    <item>
      <title>Building an Interactive Excel Dashboard for E-commerce Product Analysis: A Case Study of Jumia Products</title>
      <dc:creator>Antonina Wambui</dc:creator>
      <pubDate>Wed, 09 Sep 2026 16:56:45 +0000</pubDate>
      <link>https://dev.to/analystnina/building-an-interactive-excel-dashboard-for-e-commerce-product-analysis-a-case-study-of-jumia-ckl</link>
      <guid>https://dev.to/analystnina/building-an-interactive-excel-dashboard-for-e-commerce-product-analysis-a-case-study-of-jumia-ckl</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;One thing I have started learning during my journey into data analytics is that data rarely arrives ready for analysis.&lt;/p&gt;

&lt;p&gt;After working through Excel as part of the LuxDevHQ Data Science and Analytics, I wanted to put the skills I had learned into practice. For this project, I worked with dataset containing product listing from Jumia and challenged myself to go beyond simply creating charts.&lt;/p&gt;

&lt;p&gt;The goal was to take messy e-commerce data, understand what was wrong with it clean and transform it, analyze the patterns, and finally present the result through an interactive Excel dashboard.&lt;/p&gt;

&lt;p&gt;The dataset contained 115 product records with information about products, prices, discounts, reviews and ratings. At first glance, it looked fairly simple. However, after inspecting it more closely, I discovered missing values, duplicate records, negative review counts, inconsistent data formats and a product with prices recorded as ranges.&lt;/p&gt;

&lt;p&gt;That made the project much more interesting.&lt;/p&gt;

&lt;p&gt;Instead of jumping straight into visualization, I followed a complete analytics workflow: &lt;br&gt;
Raw Data → Data Audit → Data Cleaning → Data Transformation → Analysis → Visualization → Dashboard → Insights&lt;/p&gt;

&lt;p&gt;This article walks through that process and some of the lessons I learned along the way.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Understanding the Dataset&lt;/strong&gt;&lt;br&gt;
The original dataset contained six main columns:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Product&lt;/li&gt;
&lt;li&gt;Current Price&lt;/li&gt;
&lt;li&gt;Old Price&lt;/li&gt;
&lt;li&gt;Discount &lt;/li&gt;
&lt;li&gt;Review&lt;/li&gt;
&lt;li&gt;Ratingd&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The Ratingd column was simply a naming error, so I standardized it to Rating.&lt;/p&gt;

&lt;p&gt;One One important limitation became clear very early: the dataset did not contain actual sales information.&lt;/p&gt;

&lt;p&gt;Because of this, I could not honestly claim that a product with more reviews was necessarily selling more.&lt;/p&gt;

&lt;p&gt;Instead, I treated the number of reviews are not the same thing as sales. A product could have more reviews because it has been available for a longer period, for example.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Question I wanted the Data to Answer&lt;/strong&gt;&lt;br&gt;
With that limitation in mind, I focused my analysis around questions such as:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Do longer discounts appear to attract more customer engagement?&lt;/li&gt;
&lt;li&gt;Is there a relationship between product ratings and reviews?&lt;/li&gt;
&lt;li&gt;Does product price appear to influence ratings?&lt;/li&gt;
&lt;li&gt;Which product price appears to influence ratings?&lt;/li&gt;
&lt;li&gt;Are there products that deserve further investigation?&lt;/li&gt;
&lt;li&gt;What patterns can be communicated effectively through an Excel dashboard?
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Auditing the Raw Data&lt;/strong&gt;&lt;br&gt;
Before cleaning anything, I wanted to understand the condition of the dataset.&lt;/p&gt;

&lt;p&gt;The initial audit revealed several interesting problems:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Data Quality Issue&lt;/th&gt;
&lt;th&gt;Finding&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Total records&lt;/td&gt;
&lt;td&gt;115&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Original columns&lt;/td&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Missing Reviews&lt;/td&gt;
&lt;td&gt;58&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Missing Ratings&lt;/td&gt;
&lt;td&gt;58&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Exact duplicate rows&lt;/td&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Repeated product names&lt;/td&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Negative review values&lt;/td&gt;
&lt;td&gt;57&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Price ranges&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Invalid rating range&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Invalid discount range&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;One of the biggest red flags was the Review column.&lt;/p&gt;

&lt;p&gt;There were 57 non-blank review values and all 57 were negative.&lt;/p&gt;

&lt;p&gt;That immediately raised a question: &lt;br&gt;
How can a product have a negative number of review?&lt;/p&gt;

&lt;p&gt;Obviously, a review count cannot realistically be negative. Since the issue affected every non-blank value rather than only a few records, I treated it as a systematic data-quality problem that needed investigation.&lt;/p&gt;

&lt;p&gt;This was a good reminder that data cleaning isn't just about fixing errors; it is about understanding why something looks wrong before changing it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Cleaning the Data&lt;/strong&gt;&lt;br&gt;
Once I understood the problems, I started cleaning the dataset.&lt;br&gt;
I tried to make each cleaning decision based on the information available rather than simply forcing the data to look perfect.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Correcting Negative Review&lt;/strong&gt;&lt;br&gt;
For the negative review counts, I created a helper column and used:&lt;/p&gt;

&lt;p&gt;=IF(E2="","",ABS(VALUE(E2)))&lt;/p&gt;

&lt;p&gt;The ABS () function converts the negative values into positive values while the IF () statement ensures that blank cells remain blank.&lt;/p&gt;

&lt;p&gt;After verifying the results, I converted the corrected values to static values.&lt;br&gt;
 This gave me realistic positive review counts without turning missing information into fake data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Handling Missing Values&lt;/strong&gt;&lt;br&gt;
Both the review and rating columns contained 58 blank cells.&lt;br&gt;
I decided not to replace these blanks with zero.&lt;/p&gt;

&lt;p&gt;Why?&lt;br&gt;
Because:&lt;/p&gt;

&lt;p&gt;Blank ≠ Zero&lt;/p&gt;

&lt;p&gt;A blank review count means the review information was not captured.&lt;/p&gt;

&lt;p&gt;A zero means the product actually had zero reviews.&lt;/p&gt;

&lt;p&gt;Those two situations carry different meanings.&lt;/p&gt;

&lt;p&gt;Replacing all blanks with zero could therefore distort averages, rankings and other calculations.&lt;br&gt;
So, in this case, leaving the missing values untouched was the more honest choice.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Dealing With the Price Range&lt;/strong&gt;&lt;br&gt;
One particularly interesting record belonged to a 1/2/3 Seater Elastic Sofa Cover.&lt;/p&gt;

&lt;p&gt;It's prices were recorded as ranges:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Current Price&lt;/strong&gt;: Ksh 1,620-1980&lt;br&gt;
&lt;strong&gt;Old Price&lt;/strong&gt;: Ksh 2,200-3,200&lt;/p&gt;

&lt;p&gt;I considered three possible approaches:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use the minimum price&lt;/li&gt;
&lt;li&gt;Remove the record&lt;/li&gt;
&lt;li&gt;Calculate the midpoint&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I chose the midpoint approach.&lt;/p&gt;

&lt;p&gt;This allowed me to retain the product instead of throwing away an otherwise useful record.&lt;/p&gt;

&lt;p&gt;The original price range was retained separately so that the transformation could be traced.&lt;/p&gt;

&lt;p&gt;However, this decision also produced an interesting result.&lt;/p&gt;

&lt;p&gt;Using the midpoint prices gave me a calculated discount of approximately 33%, while the advertised discount in the dataset was 38%.&lt;/p&gt;

&lt;p&gt;Rather than changing one value to make them agree, I kept both.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Removing duplicates&lt;/strong&gt;&lt;br&gt;
The dataset contained three completely identical rows.&lt;br&gt;
Since every field matched, I removed those records as exact duplicates.&lt;/p&gt;

&lt;p&gt;However, I also found six products with repeated product names.&lt;br&gt;
I did not automatically remove those.&lt;/p&gt;

&lt;p&gt;Why?&lt;br&gt;
Because the repeated product names had differences in things such as price discount or review count. Since Jumia is a marketplace with multiple sellers, these could represent separate listings for similar products.&lt;/p&gt;

&lt;p&gt;Removing them simply because the product names matched could therefore introduce another form of data error.&lt;/p&gt;

&lt;p&gt;So my rule was:&lt;br&gt;
Exact duplicate → Remove&lt;/p&gt;

&lt;p&gt;Same product name but different listing information → Keep&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Standardizing the Dataset&lt;/strong&gt;&lt;br&gt;
After dealing with the major data-quality issues, I standardized the remaining fields.&lt;/p&gt;

&lt;p&gt;Some of the changes included:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Renaming Ratingd to Rating&lt;/li&gt;
&lt;li&gt;Removing "out of 5" from rating values&lt;/li&gt;
&lt;li&gt;Converting ratings into numerical values&lt;/li&gt;
&lt;li&gt;Converting prices from text into numbers&lt;/li&gt;
&lt;li&gt;Standardizing column names&lt;/li&gt;
&lt;li&gt;Formatting prices as Kenyan Shillings&lt;/li&gt;
&lt;li&gt;Applying consistent number formatting.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The cleaned data was then structured as Excel table so that formulas, PivotTables and charts could work more efficiently.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Creating New Analytical Fields&lt;/strong&gt;&lt;br&gt;
After cleaning the data, I created additional fields to make the dataset more useful for analysis.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Discount Analysis&lt;/strong&gt;&lt;br&gt;
I calculated the discount amount by finding the difference between the old and current prices. I also calculated the percentage discount and kept it alongside the original advertised discount.&lt;/p&gt;

&lt;p&gt;This allowed me to compare the seller's advertised discount with the discount calculated from the actual prices.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rating Categories&lt;/strong&gt;&lt;br&gt;
To make ratings easier to analyze, I grouped them into:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Poor&lt;/strong&gt;: Below 3&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Average&lt;/strong&gt;: 3-4.5&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Excellent&lt;/strong&gt;: Above 4.5&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ratings between 4.1 and 4.5 were included in the Average category as a documented working assumption.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Discount Categories&lt;/strong&gt;&lt;br&gt;
Discounts were grouped into:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Low&lt;/strong&gt;: Below 20%&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Medium&lt;/strong&gt;: 20%- 40%&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;High&lt;/strong&gt;: 40%&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Price Categories&lt;/strong&gt;&lt;br&gt;
Instead of choosing price ranges arbitrarily, I used quartiles from the dataset.&lt;/p&gt;

&lt;p&gt;Using QUARTILE.INC(), I obtained&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Q1: Ksh 493&lt;/li&gt;
&lt;li&gt;Q3: Ksh 1,669.50&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These thresholds were then used to classify products into Low, Medium and High price categories.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Engagement Strength&lt;/strong&gt;&lt;br&gt;
Since review count was being used as a proxy foe customer engagement, I used the 75th percentile as the threshold.&lt;/p&gt;

&lt;p&gt;The Review Q3 was 13 reviews, so products with 13 or more reviews were classified as having strong engagement.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data Status and Combination Flags&lt;/strong&gt;&lt;br&gt;
I also created a Data Status field to identify products as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Complete&lt;/li&gt;
&lt;li&gt;Missing Rating&lt;/li&gt;
&lt;li&gt;Missing Review&lt;/li&gt;
&lt;li&gt;Missing Both&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Finally, I created four combination flags to highlight products requiring further attention:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;High discount + Low Rating&lt;/li&gt;
&lt;li&gt;High discount + Low Engagement&lt;/li&gt;
&lt;li&gt;Many Reviews + Average Rating&lt;/li&gt;
&lt;li&gt;Strong Engagement + Excellent Rating&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Where the required data was missing, the result was marked "&lt;strong&gt;missing&lt;/strong&gt;" rather than making an assumption.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Analysis Using PivotTables and Excel Functions&lt;/strong&gt;&lt;br&gt;
With the dataset cleaned and enriched, I moved on to analysis using &lt;strong&gt;PivotTables&lt;/strong&gt;, &lt;strong&gt;PivotCharts&lt;/strong&gt;, &lt;strong&gt;formulas&lt;/strong&gt;, FILTER(), &lt;strong&gt;correlation&lt;/strong&gt; and &lt;strong&gt;scatter plots&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;I focused on three relationships:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Discount vs. Reviews&lt;/li&gt;
&lt;li&gt;Rating vs. Reviews&lt;/li&gt;
&lt;li&gt;Current Price vs. Rating&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because Review and Rating contained missing values, I used FILTER () to create helper ranges containing only complete pairs before calculating correlations.&lt;/p&gt;

&lt;p&gt;The results were:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Relationship&lt;/th&gt;
&lt;th&gt;Pearson r&lt;/th&gt;
&lt;th&gt;R²&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Discount vs. Reviews&lt;/td&gt;
&lt;td&gt;-0.111&lt;/td&gt;
&lt;td&gt;0.002&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Rating vs. Reviews&lt;/td&gt;
&lt;td&gt;0.043&lt;/td&gt;
&lt;td&gt;0.002&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Current Price vs. Rating&lt;/td&gt;
&lt;td&gt;0.110&lt;/td&gt;
&lt;td&gt;0.012&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;All three relationships were very weak.&lt;/p&gt;

&lt;p&gt;For example, the -0.111 correlation between discount and reviews is very close to zero, while the R² values show that these variables explained very little of the variation in one another.&lt;/p&gt;

&lt;p&gt;This doesn't mean that price, ratings or discounts never influence customer behavior. It simply means that this dataset did not show a strong relationship between them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Product Ranking&lt;/strong&gt;&lt;br&gt;
I also created PivotTables to identify:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Top 10 products by Rating&lt;/li&gt;
&lt;li&gt;Bottom 10 products by Rating&lt;/li&gt;
&lt;li&gt;Top 10 products by Discount&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For rating rankings, products without ratings were excluded. Where products has the same rating, review count was used as the tie-breaker.&lt;/p&gt;

&lt;p&gt;This gave the rankings a consistent and transparent approach.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Building the Interactive Dashboard&lt;/strong&gt;&lt;br&gt;
After completing the analysis, I brought the most important findings together into a single-screen interactive dashboard.&lt;/p&gt;

&lt;p&gt;The dashboard contains:&lt;br&gt;
&lt;strong&gt;KPI Cards&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Total Products&lt;/li&gt;
&lt;li&gt;Average Price&lt;/li&gt;
&lt;li&gt;Average Discount&lt;/li&gt;
&lt;li&gt;Average Rating&lt;/li&gt;
&lt;li&gt;Total Reviews&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Products Performance&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Top 10 by Rating&lt;/li&gt;
&lt;li&gt;Top 10 by Reviews&lt;/li&gt;
&lt;li&gt;Top 10 by Discount&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Relationship Analysis&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Discount vs. Reviews&lt;/li&gt;
&lt;li&gt;Rating vs. Reviews&lt;/li&gt;
&lt;li&gt;Price vs. Rating
The scatter plots include trendlines and R² values to help interpret the relationship.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Category Analysis&lt;/strong&gt;&lt;br&gt;
I also included charts showing by the distribution of products by:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Rating Category&lt;/li&gt;
&lt;li&gt;Discount Category&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Interactive Slicers&lt;/strong&gt;&lt;br&gt;
To make the dashboard easier to explore, I added slicers for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Rating Category&lt;/li&gt;
&lt;li&gt;Discount Category&lt;/li&gt;
&lt;li&gt;Price Category&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These allow users to filter the dashboard and explore different groups of products interactively.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key Findings&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;1. Bigger Discounts Did Not Mean More Engagement&lt;/strong&gt;&lt;br&gt;
The correlation between discount and reviews was -0.111, indicating an extremely weak relationship.&lt;/p&gt;

&lt;p&gt;In this dataset, products with larger discounts did not necessarily receive more reviews.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Price Was Barely Related to Rating&lt;/strong&gt;&lt;br&gt;
The correlation between current price and rating was 0.110, also a very weak relationship.&lt;/p&gt;

&lt;p&gt;This suggests that higher-priced products were not necessarily rated better.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Some Highly Discounted Products Still Had Weak Performance&lt;/strong&gt;&lt;br&gt;
Some products combined high discounts with low ratings or low engagement.&lt;/p&gt;

&lt;p&gt;These products may require more than simply another price reduction. Their product description, images, listing quality or customer expectations could be worth investigating.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Some Products Had Strong Engagement and Excellent Ratings&lt;/strong&gt;&lt;br&gt;
I also identified five products with both strong engagement and excellent ratings.&lt;/p&gt;

&lt;p&gt;These products could provide useful examples for understanding what appears to work well, although the available data isn't enough to explain exactly why.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Recommendations&lt;/strong&gt;&lt;br&gt;
Based on the analysis, I would recommend:&lt;br&gt;
Don't rely on discounts alone to drive engagement. Sellers could also improve product images, descriptions and overall listing quality.&lt;/p&gt;

&lt;p&gt;Investigate highly discounted products with weak ratings or engagement before offering even larger discounts.&lt;/p&gt;

&lt;p&gt;Study high-performing products with strong engagement and excellent ratings to identify patterns worth replicating.&lt;/p&gt;

&lt;p&gt;Interpret the results carefully. Correlation shows relationships, but it does not prove that one variable causes another.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Limitations&lt;/strong&gt;&lt;br&gt;
The analysis had several limitations.&lt;/p&gt;

&lt;p&gt;The most important was the lack of sales, revenue, units sold, and listing-age data. Therefore, review count was only used as a proxy for engagement and should not be treated as actual sales performance.&lt;/p&gt;

&lt;p&gt;Other limitations included:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;One product had a price range that required midpoint estimation.&lt;/li&gt;
&lt;li&gt;Many products had missing ratings and reviews.&lt;/li&gt;
&lt;li&gt;The rating categories included a working assumption for ratings between 4.1 and 4.5.&lt;/li&gt;
&lt;li&gt;The dataset contained only 115 original records.&lt;/li&gt;
&lt;li&gt;Correlation does not imply causation.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;These limitations are important because they define how far the findings can reasonably be generalized.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What I Learned&lt;/strong&gt;&lt;br&gt;
The biggest lesson from this project was that data analysis starts before the charts.&lt;/p&gt;

&lt;p&gt;What initially looked like a simple dataset turned out to contain several issues that could have affected the analysis if they had gone unnoticed.&lt;/p&gt;

&lt;p&gt;I learned to question unusual values, handle missing information carefully, document assumptions, and avoid making changes without understanding the impact.&lt;/p&gt;

&lt;p&gt;I also got to experience the complete analytics workflow:&lt;/p&gt;

&lt;p&gt;Data Auditing → Cleaning → Transformation → Analysis → Visualization → Dashboard → Insights&lt;/p&gt;

&lt;p&gt;Most importantly, this project showed me that Excel can be much more than a spreadsheet. With the right approach, it can be used to turn messy data into meaningful information and communicate insights through an interactive dashboard.&lt;/p&gt;

&lt;p&gt;And honestly, seeing a few raw columns turn into a complete analytical dashboard was one of my favorite parts of this project.&lt;/p&gt;

&lt;p&gt;I'm really enjoying this data analytics journey.&lt;/p&gt;

</description>
      <category>analytics</category>
      <category>data</category>
      <category>datascience</category>
      <category>excel</category>
    </item>
    <item>
      <title>Getting Started with Excel for Data Analytics: From the Basics to Cleaning Data.</title>
      <dc:creator>Antonina Wambui</dc:creator>
      <pubDate>Wed, 09 Sep 2026 09:31:35 +0000</pubDate>
      <link>https://dev.to/analystnina/getting-started-with-excel-for-data-analytics-from-the-basics-to-cleaning-data-3bhd</link>
      <guid>https://dev.to/analystnina/getting-started-with-excel-for-data-analytics-from-the-basics-to-cleaning-data-3bhd</guid>
      <description>&lt;h1&gt;
  
  
  Introduction
&lt;/h1&gt;

&lt;p&gt;When I first started learning data analytics, I thought working with data was mainly about creating charts, finding patterns and presenting insights.&lt;br&gt;
I quickly realised there is an important step that comes before all that: &lt;strong&gt;making sure the data is actually ready to be analysed&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Raw datasets can contain missing values, duplicate records, inconsistent text, incorrect data types, and formatting problems. If these issues are ignored, they can affect the results of the analysis and eventually lead to misleading conclusions.&lt;/p&gt;

&lt;p&gt;During my Excel training at &lt;strong&gt;LuxDevHQ&lt;/strong&gt;, I was introduced to some of the tools and techniques Excel provides for preparing data for analysis. This included sorting and filtering, formatting, handling missing values, removing duplicates and text functions such as &lt;strong&gt;TRIM&lt;/strong&gt;, &lt;strong&gt;PROPER&lt;/strong&gt; and &lt;strong&gt;CONCAT&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;For my practice, I worked with a synthetic dataset that allowed me to simulate a real-world data-cleaning task. Rather than jumping into analysis, I focused on understanding the dataset first and gradually transforming it into a cleaner and more consistent version.&lt;/p&gt;

&lt;p&gt;In this article, I'll share my process, the Excel tools I used, and some of the lessons I picked up along the way.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Starting With the Raw Dataset&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The first step in any data analysis project is understanding what you're working with.&lt;br&gt;
I imported my dataset into Excel and took some time to look through the columns and rows before making any changes.&lt;/p&gt;

&lt;p&gt;At this stage, I wasn't trying to fix anything yet. I wanted to understand:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What information does each column contain?&lt;/li&gt;
&lt;li&gt;Which columns contain numbers?&lt;/li&gt;
&lt;li&gt;Which contain text?&lt;/li&gt;
&lt;li&gt;Are there dates?&lt;/li&gt;
&lt;li&gt;Are there missing values?&lt;/li&gt;
&lt;li&gt;Are there values that look inconsistent?&lt;/li&gt;
&lt;li&gt;Could any columns have duplicates?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This simple inspection helped me realise that data cleaning shouldn't begin with immediately changing things. You first need to understand what the data represents.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Creating a Safe Copy&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;One thing I learned early was the importance of protecting the original dataset.&lt;/p&gt;

&lt;p&gt;Instead of working directly on my original data, I created a duplicate worksheet and used the copy for my cleaning process.&lt;br&gt;
This gave me a backup that I could return to whenever I made a mistake.&lt;/p&gt;

&lt;p&gt;It might seem like a small step, but when you're experimenting with Excel for the first time, it's easy to accidentally delete a column, change a value or apply formatting to the wrong range.&lt;br&gt;
Having an untouched copy made the process much safer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Making the Dataset Easier to Work With&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Before looking for errors, I first made the spreadsheet easier to read.&lt;br&gt;
I adjusted the column widths using Excel's &lt;strong&gt;AutoFit&lt;/strong&gt; feature so that the values and column headings were visible.&lt;/p&gt;

&lt;p&gt;I also converted the dataset into an Excel table.&lt;br&gt;
This was useful because tables make it easier to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Filter information&lt;/li&gt;
&lt;li&gt;Sort records&lt;/li&gt;
&lt;li&gt;Navigate through large datasets&lt;/li&gt;
&lt;li&gt;Keep formatting consistent&lt;/li&gt;
&lt;li&gt;Work with formulas&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I then enabled filters on the columns so I could inspect specific categories instead of manually going through every row.&lt;/p&gt;

&lt;p&gt;For example, filtering a column allowed me to quickly identify blank cells or check whether the same category had been entered in different ways. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Checking Data Types&lt;/strong&gt;&lt;br&gt;
One of the most interesting things I learned was that how a value looks isn't always the same as how Excel understands it.&lt;/p&gt;

&lt;p&gt;A column containing numbers doesn't necessarily mean it should be treated as a numerical field.&lt;/p&gt;

&lt;p&gt;For example, an ID such as:&lt;/p&gt;

&lt;p&gt;10001&lt;/p&gt;

&lt;p&gt;may look like a number, but if it is simply identifying a transaction or customer, there is no reason to calculate an average or total from it.&lt;/p&gt;

&lt;p&gt;The same applies to phone numbers.&lt;/p&gt;

&lt;p&gt;I therefore checked my columns and made sure they were using appropriate formats.&lt;/p&gt;

&lt;p&gt;Some of the common data types I worked with included:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Data&lt;/th&gt;
&lt;th&gt;Appropriate Format&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Transaction/Customer ID&lt;/td&gt;
&lt;td&gt;Text&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Names&lt;/td&gt;
&lt;td&gt;Text&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Phone Numbers&lt;/td&gt;
&lt;td&gt;Text&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Dates&lt;/td&gt;
&lt;td&gt;Date&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quantity&lt;/td&gt;
&lt;td&gt;Number&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Prices/Revenue&lt;/td&gt;
&lt;td&gt;Currency or Number&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Categories&lt;/td&gt;
&lt;td&gt;Text&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;This was a good reminder that data types should be based on what the data means, not just what it looks like.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Looking for Missing Data&lt;/strong&gt;&lt;br&gt;
Next, I checked the dataset for missing values.&lt;br&gt;
Missing data is not automatically an error. Sometimes a value is genuinely unavailable.&lt;/p&gt;

&lt;p&gt;The important thing is deciding what to do with the missing value based on the context.&lt;/p&gt;

&lt;p&gt;For example, if a category such as location was missing, I could use a value such as "Unknown" where appropriate.&lt;/p&gt;

&lt;p&gt;However, I wouldn't randomly replace a missing numerical value with zero.&lt;/p&gt;

&lt;p&gt;A blank amount and an amount of zero do not necessarily mean the same thing.&lt;/p&gt;

&lt;p&gt;This made me realise that data cleaning isn't simply about making every cell look complete. It's about making appropriate decisions about what each value represents.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6. Finding Duplicates&lt;/strong&gt;&lt;br&gt;
Another important check was identifying duplicate records.&lt;/p&gt;

&lt;p&gt;I used Excel's &lt;br&gt;
Data → Remove Duplicates&lt;br&gt;
feature to check whether the dataset contained repeated records.&lt;/p&gt;

&lt;p&gt;Even when duplicates aren't found performing the check is still useful.&lt;br&gt;
It confirms that you've considered one of the common problems that can affect analysis.&lt;/p&gt;

&lt;p&gt;For example, if the same transaction appeared twice and I calculated total revenue without noticing it the final result could be higher than the actual revenue.&lt;/p&gt;

&lt;p&gt;This showed me why data validation should happen before analysis.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;7. Cleaning Inconsistent Text&lt;/strong&gt;&lt;br&gt;
Text data can look simple, but it can create some interesting problems.&lt;/p&gt;

&lt;p&gt;For example, Excel may treat these as different values:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Nairobi&lt;/li&gt;
&lt;li&gt;nairobi&lt;/li&gt;
&lt;li&gt;NAIROBI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To a person, they all appear to mean the same thing. To a computer, however, differences in formatting or extra spaces can affect how values are grouped and analysed.&lt;/p&gt;

&lt;p&gt;This is where some of Excel's text functions became useful.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TRIM&lt;/strong&gt;&lt;br&gt;
I used TRIM to remove unnecessary spaces from text.&lt;br&gt;
=TRIM(A2)&lt;/p&gt;

&lt;p&gt;This is particularly useful when data has been copied from another source and contains unwanted space.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;PROPER&lt;/strong&gt;&lt;br&gt;
I also explored PROPER for standardising names.&lt;br&gt;
=PROPER(A2)&lt;/p&gt;

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

&lt;p&gt;JOHN KAMAU&lt;/p&gt;

&lt;p&gt;can become:&lt;/p&gt;

&lt;p&gt;John Kamau&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CONCAT&lt;/strong&gt;&lt;br&gt;
Another function I practised was &lt;strong&gt;CONCAT&lt;/strong&gt;,which can be used to join pieces of text together.&lt;/p&gt;

&lt;p&gt;=CONCAT(A2,B2)&lt;/p&gt;

&lt;p&gt;These functions showed me that Excel isn't only useful for calculations. It can also be used to transform and standardise text.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;8. Using Find and Replace&lt;/strong&gt;&lt;br&gt;
Not every cleaning problem requires a formula.&lt;/p&gt;

&lt;p&gt;Excel's &lt;strong&gt;Find and Replace&lt;/strong&gt; feature can be much quicker when dealing with specific inconsitencies.&lt;/p&gt;

&lt;p&gt;The shortcut:&lt;br&gt;
Ctrl + H&lt;br&gt;
Opens Find and Replace&lt;/p&gt;

&lt;p&gt;For example, if one category had been entered several times incorrectly, I could search for the incorrect version and replace it with the correct one.&lt;/p&gt;

&lt;p&gt;This was one of those small Excel features that I initially overlooked but found surprisingly useful during the cleaning process.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;9. Helper Columns: A Simple but Useful Technique&lt;/strong&gt;&lt;br&gt;
Something else I learned was the use of helper columns.&lt;/p&gt;

&lt;p&gt;Instead of changing the original values immediately, I could create a temporary column containing a formula such as:&lt;br&gt;
=TRIM(A2)&lt;/p&gt;

&lt;p&gt;Then I could fill the formula down the dataset, check the result and, once satisfied, copy the result and use Paste Special → Values.&lt;/p&gt;

&lt;p&gt;This allowed me to compare the original values with the cleaned ones before replacing anything.&lt;/p&gt;

&lt;p&gt;For a beginner, I found this approach much less intimidating because I could see exactly what the formula was doing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;10. What This Exercise Taught Me&lt;/strong&gt;&lt;br&gt;
This exercise changed the way I look at spreadsheets.&lt;br&gt;
Before, I thought cleaning data mainly meant removing duplicates and filling blank cells.&lt;br&gt;
Now I understand that it involves several different decisions, including:&lt;/p&gt;

&lt;p&gt;Understanding → Checking → Cleaning → Validating → Preparing&lt;/p&gt;

&lt;p&gt;I also learned that there isn't always one correct way to clen a dataset.&lt;/p&gt;

&lt;p&gt;The right approach depends on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The type of data&lt;/li&gt;
&lt;li&gt;What each column represents&lt;/li&gt;
&lt;li&gt;Why values are missing&lt;/li&gt;
&lt;li&gt;The type of inconsistency&lt;/li&gt;
&lt;li&gt;What the data will eventually be used for&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For example, a missing text value might reasonably be labelled "Unknown", while a missing financial value may need further investigation rather than simply being replaced with zero.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;11. From Cleaning to Analysis&lt;/strong&gt;&lt;br&gt;
The biggest lesson for me was that data cleaning is part of data analysis, not something separate from it.&lt;/p&gt;

&lt;p&gt;A dashboard may look beautiful, but if the data behind it contains errors, the visualization can still communicate the wrong story.&lt;/p&gt;

&lt;p&gt;The process therefore becomes: &lt;br&gt;
Raw Data → Cleaning → Validation → Analysis → Visualization → Insights&lt;/p&gt;

&lt;p&gt;Excel can support several of these stages, which makes it a useful starting point for someone learning data analytics.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
My first hands-on experience with Excel data cleaning gave me a better understanding of what happens before the charts and dashboards are created.&lt;/p&gt;

&lt;p&gt;I learned how to inspect a dataset, protect the original data, work with tables, check data types, identify missing values and duplicates, standardise text and use Excel functions such as &lt;strong&gt;TRIM, PROPER, and CONCAT&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;More importantly, I learned that cleaning data isn't about making a spreadsheet look perfect. It's about making sure the information is consistent, meaningful and reliable enough to support analysis.&lt;/p&gt;

&lt;p&gt;I'm still at the beginning of my data analytics journey, but this exercise has given me a stronger foundation in Excel and a better appreciation for the work that happens behind the scenes before we can confidently say:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Let's analyse the data"&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>excel</category>
      <category>dataanalytics</category>
      <category>datacleaning</category>
      <category>beginners</category>
    </item>
    <item>
      <title>My First GitHub Project</title>
      <dc:creator>Antonina Wambui</dc:creator>
      <pubDate>Fri, 21 Aug 2026 12:06:11 +0000</pubDate>
      <link>https://dev.to/analystnina/-my-first-github-project-2lol</link>
      <guid>https://dev.to/analystnina/-my-first-github-project-2lol</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;When working on a project, you may make many changes to your files. It can become difficult to keep track of what you changed. Git helps you solve this by allowing you to record your changes and keep a history of your work. GitHub provides a place where the project can be stored online.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is Git?
&lt;/h3&gt;

&lt;p&gt;Git is a tool used to keep track of changes made to files in a project. It helps you have different versions of your work so that you can see how your project has changed over time. This can be useful when working on a project because you can keep track of your progress and go back to an earlier version if needed.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is GitHub?
&lt;/h3&gt;

&lt;p&gt;GitHub is the online platform where you can store and share that Git project. &lt;/p&gt;

&lt;h3&gt;
  
  
  What is a Repository?
&lt;/h3&gt;

&lt;p&gt;A (repo) is a place where your project is stored and git keeps track of it's history.&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating a Local Folder
&lt;/h2&gt;

&lt;p&gt;The first step is to create a folder on my computer where I will keep my project in my files. &lt;br&gt;
This is called a &lt;strong&gt;local folder&lt;/strong&gt; because it is stored in my computer.&lt;/p&gt;

&lt;p&gt;For example, I can create a folder called &lt;code&gt;my-first-project&lt;/code&gt;. I can then open Git Bash and move into the folderusing the &lt;code&gt;cd&lt;/code&gt; command.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir &lt;/span&gt;my-first-project
&lt;span class="nb"&gt;cd &lt;/span&gt;my-first-project

The &lt;span class="k"&gt;**&lt;/span&gt;&lt;span class="nb"&gt;mkdir&lt;/span&gt;&lt;span class="k"&gt;**&lt;/span&gt; &lt;span class="nb"&gt;command &lt;/span&gt;is used to create a new folder, &lt;span class="k"&gt;while &lt;/span&gt;the &lt;span class="k"&gt;**&lt;/span&gt;&lt;span class="nb"&gt;cd&lt;/span&gt;&lt;span class="k"&gt;**&lt;/span&gt; &lt;span class="nb"&gt;command &lt;/span&gt;is used to move into that folder.

So &lt;span class="nb"&gt;local &lt;/span&gt;folder - is basically my project&lt;span class="s1"&gt;'s home on my computer.
You create folder first, then git comes later when you 

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

&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
bash&lt;br&gt;
git init&lt;/p&gt;

&lt;p&gt;so the order is &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create folder&lt;/li&gt;
&lt;li&gt;Enter folder&lt;/li&gt;
&lt;li&gt;Git init&lt;/li&gt;
&lt;li&gt;Git starts tracking the project&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
  
  
  Staging with git add
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Staging&lt;/strong&gt; is the process of preparing changes before a commit.&lt;/p&gt;

&lt;p&gt;After creating or changing a file, I need to tell git which changes I want to include in my next commit.&lt;br&gt;
This is done by using the &lt;code&gt;git add&lt;/code&gt; command. &lt;/p&gt;

&lt;p&gt;Example, I can use&lt;br&gt;
&lt;/p&gt;

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

The &lt;span class="nb"&gt;.&lt;/span&gt; means that Git should stage all the changes &lt;span class="k"&gt;in &lt;/span&gt;the current folder.

Also can stage one specific file by using its name:
Bash
git add README.md

After using git add, the changes are placed &lt;span class="k"&gt;in &lt;/span&gt;the staging area and are ready to be committed.

&lt;span class="k"&gt;**&lt;/span&gt;Committing with git commit&lt;span class="k"&gt;**&lt;/span&gt;
After staging my changes, the next step is to commit them. 
A &lt;span class="k"&gt;**&lt;/span&gt;commit&lt;span class="k"&gt;**&lt;/span&gt; is like a saving version or checkpoint of my project. It allows Git to keep a record of the changes I have made.

To create commit, I use the following &lt;span class="nb"&gt;command&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
bash&lt;br&gt;
git commit -m "Initial commit"&lt;/p&gt;

&lt;p&gt;the &lt;strong&gt;-m&lt;/strong&gt; allows me to add a message describing what I have committed. The message should briefly explain what the changes are&lt;br&gt;
For example&lt;br&gt;
Bash&lt;br&gt;
git commit -m "Add README file"&lt;/p&gt;

&lt;h3&gt;
  
  
  What is SSH
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;SSH&lt;/strong&gt; stands for Secure Shell. &lt;br&gt;
It is a secure way of connecting my computer to git hub. In Git, SSH can be used to connect my local repository to a GitHub repository. &lt;br&gt;
It uses SSH keys to verify the connection between my computer and GitHub.&lt;/p&gt;

&lt;p&gt;Once the connection is set up you can use commands such as&lt;br&gt;
Bash&lt;br&gt;
git push &lt;br&gt;
to send your GitHub securely.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Connecting the project to GitHub&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After creating a repository on GitHub, I need to connect it to the project on my computer. This allows Git to know where my project should be sent when i want to upload my work.&lt;br&gt;
I can connect my local repository to GitHub by using the &lt;code&gt;git remote add&lt;/code&gt; command. Example:&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
bash
git remote add origin git@github.com:ninadavid4/my-first-project.git
Here, **origin** is the name given to the GitHub repository. The SSH address after origin tells git where the remote repository is located.
I can check if the connection has been added by using 
Bash
git remote -v
This shows the GitHub repository connected to my local project.

Then later, when you use:
Bash 
git push

Git knows where to send your commits.

##Conclusion
In this project, I learned how to take a project from a local folder on my computer and connect it GitHub using Git and SSH. I learned how to create a Git repository, stage changes using `git add`, save them using `git commit`, and connect the project to a remote GitHub repository. I also learned that SSH provides a secure way for my computer to communicate with GitHub.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>beginners</category>
      <category>git</category>
      <category>github</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
