<?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>Forem: Wahu Elizabeth</title>
    <description>The latest articles on Forem by Wahu Elizabeth (@wahuelizabeth).</description>
    <link>https://forem.com/wahuelizabeth</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3818865%2F2c7ca424-cde4-4972-8d06-71fc6ebf83bf.png</url>
      <title>Forem: Wahu Elizabeth</title>
      <link>https://forem.com/wahuelizabeth</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/wahuelizabeth"/>
    <language>en</language>
    <item>
      <title>Understanding Subqueries vs CTEs in SQL (With Examples)</title>
      <dc:creator>Wahu Elizabeth</dc:creator>
      <pubDate>Wed, 22 Apr 2026 10:34:02 +0000</pubDate>
      <link>https://forem.com/wahuelizabeth/understanding-subqueries-vs-ctes-in-sql-with-examples-4pg0</link>
      <guid>https://forem.com/wahuelizabeth/understanding-subqueries-vs-ctes-in-sql-with-examples-4pg0</guid>
      <description>&lt;p&gt;When working with SQL, especially in data analysis, you’ll often need to break down complex queries into manageable pieces. Two powerful tools that help with this are subqueries and Common Table Expressions (CTEs).&lt;/p&gt;

&lt;p&gt;This article explains what they are, how they differ, and when to use each—using clear examples.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is a Subquery?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A subquery is simply a query nested inside another SQL query. It runs first and passes its result to the outer query.&lt;br&gt;
Example:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT name
FROM employees
WHERE salary &amp;gt; (
 SELECT AVG(salary)
 FROM employees
 );
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;What’s happening here?&lt;/p&gt;

&lt;p&gt;The inner query calculates the average salary&lt;br&gt;
The outer query returns employees earning above that average&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Types of Subqueries&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Scalar Subquery&lt;/strong&gt;&lt;br&gt;
Returns a single value.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; SELECT name
 FROM employees
 WHERE salary &amp;gt; (SELECT AVG(salary) FROM employees);
&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.amazonaws.com%2Fuploads%2Farticles%2F5u9xyfkq5u2dl5lm43ej.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.amazonaws.com%2Fuploads%2Farticles%2F5u9xyfkq5u2dl5lm43ej.png" alt=" " width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Row Subquery&lt;/strong&gt;&lt;br&gt;
Returns a single row.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; SELECT *
 FROM employees
 WHERE (department_id, salary) = (
 SELECT department_id, MAX(salary)
 FROM employees
);
&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.amazonaws.com%2Fuploads%2Farticles%2Fd4psowlzynx7rq7ow6s5.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.amazonaws.com%2Fuploads%2Farticles%2Fd4psowlzynx7rq7ow6s5.png" alt=" " width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Column Subquery&lt;/strong&gt;&lt;br&gt;
Returns a single column.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT name
FROM employees
WHERE department_id IN (
SELECT id FROM departments
 );
&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.amazonaws.com%2Fuploads%2Farticles%2Fnen6ymoo5ysj7zolps91.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.amazonaws.com%2Fuploads%2Farticles%2Fnen6ymoo5ysj7zolps91.png" alt=" " width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Correlated Subquery&lt;/strong&gt;&lt;br&gt;
Depends on the outer query and runs repeatedly.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT name
FROM employees e1
WHERE salary &amp;gt; (
  SELECT AVG(salary)
  FROM employees e2
  WHERE e1.department_id = e2.department_id
  );
&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.amazonaws.com%2Fuploads%2Farticles%2F4rc4j9x8ic7z373uc73o.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.amazonaws.com%2Fuploads%2Farticles%2F4rc4j9x8ic7z373uc73o.png" alt=" " width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When Should We Use Subqueries?&lt;/strong&gt;&lt;br&gt;
Subqueries are useful when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You need a quick, one-time calculation.&lt;/li&gt;
&lt;li&gt;The logic is simple and doesn’t need reuse.&lt;/li&gt;
&lt;li&gt;You want to filter data based on aggregated values.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;However, they can become hard to read and slow when nested deeply.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What are CTEs (Common Table Expressions)?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A CTE is a temporary result  set defined at the start of a query using the &lt;strong&gt;WITH&lt;/strong&gt; keyword. It acts like a named query you can reference later.&lt;br&gt;
Example:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; WITH avg_salary AS (
   SELECT AVG(salary) AS avg_sal
   FROM employees
 )
SELECT name
FROM employees, avg_salary
WHERE employees.salary &amp;gt; avg_salary.avg_sal;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Types and Use Cases of CTEs&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Simple CTE&lt;/strong&gt;&lt;br&gt;
Used to simplify complex queries.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;WITH high_earners AS (
     SELECT name, salary
     FROM employees
     WHERE salary &amp;gt; 50000
  )
SELECT * FROM high_earners;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;2. Recursive CTE&lt;/strong&gt;&lt;br&gt;
Used for hierarchical data (e.g., organizational charts).&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;WITH RECURSIVE employee_hierarchy AS (
  SELECT id, name, manager_id
  FROM employees
  WHERE manager_id IS NULL
  UNION ALL
  SELECT e.id, e.name, e.manager_id
  FROM employees e
  INNER JOIN employee_hierarchy eh
  ON e.manager_id = eh.id
  )
  SELECT * FROM employee_hierarchy;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;3. Multiple CTEs&lt;/strong&gt;&lt;br&gt;
You can define multiple CTEs in one query.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;WITH dept_avg AS (
    SELECT department_id, AVG(salary) avg_sal
    FROM employees
    GROUP BY department_id
),
filtered AS (
    SELECT e.name, e.salary, e.department_id
    FROM employees e
    JOIN dept_avg d
    ON e.department_id = d.department_id
    WHERE e.salary &amp;gt; d.avg_sal
    )
    SELECT * FROM filtered;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;When Should You Use CTEs?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;CTEs are ideal when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Your query is complex and needs structure&lt;/li&gt;
&lt;li&gt;You want to reuse logic&lt;/li&gt;
&lt;li&gt;You need better readability and debugging&lt;/li&gt;
&lt;li&gt;You’re working with hierarchical data (recursion)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Subqueries vs CTEs: Key Comparison&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.amazonaws.com%2Fuploads%2Farticles%2Fyfen08i160ngmf8fk7uv.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.amazonaws.com%2Fuploads%2Farticles%2Fyfen08i160ngmf8fk7uv.png" alt=" " width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Which One Should You Use?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Use subqueries when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The query is simple&lt;/li&gt;
&lt;li&gt;You only need a quick filter or calculation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Use CTEs when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The query is complex&lt;/li&gt;
&lt;li&gt;You want cleaner, more maintainable code&lt;/li&gt;
&lt;li&gt;You need recursion or multiple steps&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Final Thoughts&lt;/strong&gt;&lt;br&gt;
Both subqueries and CTEs are essential SQL tools. The choice between them often comes down to clarity vs simplicity.&lt;/p&gt;

&lt;p&gt;If your query is growing complicated or hard to read, that’s usually a sign you should switch to a CTE.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Still learning...&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>sql</category>
      <category>beginners</category>
      <category>luxdev</category>
      <category>datascience</category>
    </item>
    <item>
      <title>From Scratch to Queries: Building a School Database with SQL – My Nairobi Academy Project.</title>
      <dc:creator>Wahu Elizabeth</dc:creator>
      <pubDate>Tue, 14 Apr 2026 15:06:44 +0000</pubDate>
      <link>https://forem.com/wahuelizabeth/from-scratch-to-queries-building-a-school-database-with-sql-my-nairobi-academy-project-4if</link>
      <guid>https://forem.com/wahuelizabeth/from-scratch-to-queries-building-a-school-database-with-sql-my-nairobi-academy-project-4if</guid>
      <description>&lt;p&gt;Transitioning from viewing data as simple lists to managing it within a relational database is a milestone for any developer. This week, I took on the task of building a foundational system for** Nairobi Academy**. The goal was to move beyond theory and implement a functional database that tracks students, courses, and enrollments.&lt;/p&gt;

&lt;p&gt;Here is a breakdown of the SQL fundamentals used to bring this project to life.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Understanding the Language: DDL vs. DML&lt;/strong&gt;&lt;br&gt;
Before writing a single line of code, it is essential to distinguish between the two primary "modes" of SQL:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DDL (Data Definition Language)&lt;/strong&gt;: Think of this as the blueprint phase. DDL commands define the structure of the database. When you create a table or change its columns, you are using DDL.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DML (Data Manipulation Language)&lt;/strong&gt;: This is the action phase. Once the structure exists, DML allows you to interact with the actual data—adding new students, updating grades, or removing records.&lt;/p&gt;

&lt;p&gt;The Difference: DDL changes the container (the table), while DML changes the content (the rows).&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.amazonaws.com%2Fuploads%2Farticles%2Fs8iojur2c6dnj91a4nfr.jpg" 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.amazonaws.com%2Fuploads%2Farticles%2Fs8iojur2c6dnj91a4nfr.jpg" alt=" " width="784" height="1168"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Building the Framework: CREATE, INSERT, UPDATE, and DELETE&lt;/strong&gt;&lt;br&gt;
In the Nairobi Academy project, these four commands formed the core lifecycle of our data:&lt;/p&gt;

&lt;p&gt;CREATE: I used this DDL command to establish our tables. For example, creating the Students table required defining data types like INT for IDs and VARCHAR for names.&lt;/p&gt;

&lt;p&gt;INSERT: Once the tables were ready, I populated them with student records and course details. This is where the database actually starts to look like a school roster.&lt;/p&gt;

&lt;p&gt;UPDATE: Data is rarely static. When a student changed their contact information or a course name was adjusted, UPDATE allowed me to modify existing rows without deleting them.&lt;/p&gt;

&lt;p&gt;DELETE: This was used to remove records that were no longer relevant, such as a student who withdrew from a specific semester.&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.amazonaws.com%2Fuploads%2Farticles%2F4rw86uwut4gbk088mm84.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.amazonaws.com%2Fuploads%2Farticles%2F4rw86uwut4gbk088mm84.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Precision with the WHERE Clause&lt;br&gt;
A database with thousands of rows is useless if you can't find exactly what you need. The WHERE clause is the ultimate filter. During the project, I utilized several operators to refine my queries:&lt;/p&gt;

&lt;p&gt;= and &amp;gt;: Used for direct matches or finding students above a certain age.&lt;/p&gt;

&lt;p&gt;BETWEEN: Perfect for finding enrollments within a specific date range.&lt;/p&gt;

&lt;p&gt;IN: Allowed me to filter students belonging to a specific list of departments (e.g., 'Science', 'Arts').&lt;/p&gt;

&lt;p&gt;LIKE: A powerful tool for pattern matching, such as finding all students whose names start with "J" using LIKE 'J%'.&lt;/p&gt;

&lt;p&gt;Transformation with CASE WHEN&lt;br&gt;
One of the most interesting parts of the assignment was using the CASE WHEN statement. This functions like "if-then" logic within a query. Instead of just pulling raw numbers, I used it to transform data on the fly.&lt;/p&gt;

&lt;p&gt;For example, I used CASE WHEN to categorize student marks:&lt;/p&gt;

&lt;p&gt;If a score was above 80, the query returned 'Distinction'.&lt;/p&gt;

&lt;p&gt;If it was between 60 and 79, it returned 'Pass'.&lt;/p&gt;

&lt;p&gt;This allows the database to provide meaningful insights rather than just raw data points.&lt;br&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.amazonaws.com%2Fuploads%2Farticles%2Fae0039avjezbff4vwj3c.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.amazonaws.com%2Fuploads%2Farticles%2Fae0039avjezbff4vwj3c.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reflection: Challenges and Wins&lt;/strong&gt;&lt;br&gt;
This week was an eye-opener. The most challenging aspect was ensuring "Referential Integrity"—making sure I didn't delete a student who was still enrolled in a course, which would cause a conflict in the database.&lt;/p&gt;

&lt;p&gt;The most interesting part? Seeing how a few lines of SQL can transform a massive pile of disorganized information into a structured, searchable system. Building the Nairobi Academy project made the abstract concept of "data" feel tangible and manageable.&lt;/p&gt;

&lt;p&gt;Next step: Mastering Joins to connect these tables even more deeply.&lt;/p&gt;

&lt;p&gt;I really enjoyed this.&lt;/p&gt;

</description>
      <category>sql</category>
      <category>luxdev</category>
      <category>beginners</category>
    </item>
    <item>
      <title>My First Experience Using Excel for Real-World Data Analysis.</title>
      <dc:creator>Wahu Elizabeth</dc:creator>
      <pubDate>Thu, 26 Mar 2026 16:13:39 +0000</pubDate>
      <link>https://forem.com/wahuelizabeth/my-first-experience-using-excel-for-real-world-data-analysis-542c</link>
      <guid>https://forem.com/wahuelizabeth/my-first-experience-using-excel-for-real-world-data-analysis-542c</guid>
      <description>&lt;p&gt;Before starting this project, I honestly knew almost nothing about Excel. I had heard about it, seen people use it, but I never really understood how powerful it is. As just a girl trying to figure things out, I was honestly a bit nervous and overwhelmed at first. But at the same time, I was open to learning and ready to take on the challenge. Like many beginners, I saw it as just a tool for storing data in rows and columns. However, through hands-on practice, I quickly realized that Excel is far more powerful—it is a complete data analysis tool used by professionals across industries.&lt;/p&gt;

&lt;p&gt;This article shares how Excel is applied in real-world data analysis, based on my experience building a product performance dashboard.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Excel?&lt;/strong&gt;&lt;br&gt;
Microsoft Excel is a tool used to organize, clean, analyze, and present data. It works using rows and columns, and it has features like formulas, PivotTables, charts, and slicers that help turn raw data into meaningful information. Even in 2026, Excel remains one of the most widely used tools for data analysis due to its accessibility and versatility&lt;/p&gt;

&lt;p&gt;At first, it looked complicated—but as I started using it, I slowly began to understand how everything connects.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🌍 Real-World Use&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I learned that Excel is used almost everywhere—in business, marketing, finance, and even e-commerce. For example, a company like Jumia can use Excel to analyze:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Product prices&lt;/li&gt;
&lt;li&gt;Discounts&lt;/li&gt;
&lt;li&gt;Customer reviews&lt;/li&gt;
&lt;li&gt;Ratings&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This helps them make decisions like:&lt;br&gt;
Which products to promote&lt;br&gt;
Whether to increase or reduce prices&lt;br&gt;
Which products need improvement&lt;/p&gt;

&lt;p&gt;Seeing this made me realise that Excel is not just about numbers—it actually helps businesses grow.&lt;/p&gt;

&lt;p&gt;🛠️ What I Learned (As a Beginner)&lt;/p&gt;

&lt;p&gt;Even though I started from zero, I managed to learn and use several important Excel tools:&lt;/p&gt;

&lt;p&gt;🔹 Data Cleaning&lt;br&gt;
This was one of the hardest parts at first, but also the most important.&lt;br&gt;
I used:&lt;br&gt;
Text to Columns&lt;br&gt;
Find &amp;amp; Replace&lt;br&gt;
Functions like LEFT(), VALUE(), and ABS()&lt;br&gt;
This helped me:&lt;br&gt;
Remove “KSh” and commas&lt;br&gt;
Convert text into numbers&lt;br&gt;
Fix negative review values&lt;br&gt;
Extract ratings from text&lt;/p&gt;

&lt;p&gt;🔹 Data Enrichment&lt;br&gt;
I created new columns using formulas:&lt;br&gt;
Discount Amount&lt;br&gt;
Rating Category (Poor, Average, Excellent)&lt;br&gt;
Discount Category (Low, Medium, High)&lt;br&gt;
At first, formulas looked scary—but once I understood them, they became really useful.&lt;/p&gt;

&lt;p&gt;🔹 PivotTables&lt;br&gt;
This was honestly one of the most powerful tools I learned. It made analyzing data much faster and easier.&lt;br&gt;
I used PivotTables to:&lt;br&gt;
Find averages&lt;br&gt;
Identify top products&lt;br&gt;
Group data into categories&lt;/p&gt;

&lt;p&gt;🔹 Charts &amp;amp; Visuals&lt;br&gt;
I created:&lt;br&gt;
Bar charts for top products&lt;br&gt;
Donut charts for categories&lt;br&gt;
Scatter plots to see relationships&lt;br&gt;
This is where everything started to make sense visually.&lt;/p&gt;

&lt;p&gt;🔹 Slicers &amp;amp; Interactivity&lt;br&gt;
This part felt really cool 😄&lt;br&gt;
I added slicers so the dashboard can filter data instantly.&lt;br&gt;
It made everything interactive and more professional.&lt;/p&gt;

&lt;p&gt;🔹 Conditional Formatting&lt;br&gt;
I used colors to highlight:&lt;br&gt;
High discounts (green)&lt;br&gt;
Low ratings (red)&lt;br&gt;
This made important insights easy to spot.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💡 Personal Reflection&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This experience completely changed how I see data.&lt;br&gt;
At the beginning, I was confused and honestly a bit stressed because everything felt new. But as I kept practicing, I started understanding patterns and relationships.&lt;br&gt;
Now I can look at data and think:&lt;br&gt;
Why is this happening?&lt;br&gt;
What does this mean?&lt;br&gt;
What decision can be made from this?&lt;/p&gt;

&lt;p&gt;For example, I noticed that:&lt;br&gt;
Medium discounts sometimes have better ratings&lt;br&gt;
High discounts don’t always mean more reviews&lt;/p&gt;

&lt;p&gt;That really surprised me.&lt;/p&gt;

&lt;p&gt;I’m still a beginner, and I know I have a lot to learn but now I feel more confident. This is just the start of my journey into data analysis, and I’m excited to keep improving.&lt;/p&gt;

</description>
      <category>firstpost</category>
      <category>beginners</category>
      <category>datascience</category>
    </item>
  </channel>
</rss>
