<?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: Derick Kimanthi</title>
    <description>The latest articles on DEV Community by Derick Kimanthi (@derick_kimanthi).</description>
    <link>https://dev.to/derick_kimanthi</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%2F3708673%2Fbeb24c85-b070-4185-af99-c3973cc03c66.jpg</url>
      <title>DEV Community: Derick Kimanthi</title>
      <link>https://dev.to/derick_kimanthi</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/derick_kimanthi"/>
    <language>en</language>
    <item>
      <title>Connecting Power BI to a SQL Database:local &amp; cloud option</title>
      <dc:creator>Derick Kimanthi</dc:creator>
      <pubDate>Fri, 20 Mar 2026 12:34:03 +0000</pubDate>
      <link>https://dev.to/derick_kimanthi/connecting-power-bi-to-a-sql-databaselocal-cloud-option-3md</link>
      <guid>https://dev.to/derick_kimanthi/connecting-power-bi-to-a-sql-databaselocal-cloud-option-3md</guid>
      <description>&lt;h2&gt;
  
  
  &lt;u&gt;INTRODUCTION:&lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;Think of this you have raw data, for example let's say: customers data, products data, sales data and inventory data. Imagine, you needing to get meaningful insights from this manually. It can be hectic and overwhelming. That's why &lt;strong&gt;Microsoft&lt;/strong&gt; produced a powerful tool known as &lt;strong&gt;Power BI&lt;/strong&gt;. What is Power BI? its a detailed business intelligence(BI) and data visualization tool, that helps analysts transform raw data into meaningful insights and reports. In power BI, you can create interactive dashboards, clean data and perform detailed analysis, but that is just a drop in the ocean there's much more Power BI can do. Companies and organisations can easily connect Power Bi to their databases. By doing this, companies can be able to work on live and secure data in real-time, therefore enhacing their decision-making. In this article we will be discussing one of the most important uses of Power BI: how to connect Power BI to a SQL database both locally to your machine and through a cloud option.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;u&gt; Connecting Power BI to a Local PostgreSQL:&lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;Connecting Power BI locally: means you are connecting from a database that's  hosted inside your computer.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First step is launching or opening Power BI Desktop. 
Below is how the loading screen looks like:&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.amazonaws.com%2Fuploads%2Farticles%2Fcmyx9bbptdk19wrdb4wa.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%2Fcmyx9bbptdk19wrdb4wa.png" alt="Launching Power BI" width="614" height="291"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Selecting a data source:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After Power BI has fully loaded, click &lt;strong&gt;blank report&lt;/strong&gt; you will be redirected to the report view.&lt;br&gt;
Inside the report view click &lt;strong&gt;get data&lt;/strong&gt;. You will see multiple sources of data.&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%2Faa0um7uil6w92julgg06.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%2Faa0um7uil6w92julgg06.png" alt="Get Data" width="800" height="106"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Below is the pop up you will get after clicking get data&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.amazonaws.com%2Fuploads%2Farticles%2Fwg53ph4knbtun8myuamv.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%2Fwg53ph4knbtun8myuamv.png" alt="Database selection" width="703" height="679"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Since you want to connect from a database, click the &lt;strong&gt;database&lt;/strong&gt; option. In this case, select postgreSQL and click &lt;strong&gt;connect&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%2Fasd0k9jz6bpd9oeyq0r1.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%2Fasd0k9jz6bpd9oeyq0r1.png" alt="connecting the database" width="662" height="652"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Entering Database Details:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You will get a pop up that will require you to enter the database details.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Server: This is the name of the server that your database runs on. By default, its usually: &lt;code&gt;localhost:5432&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;name: This is the name for you database that you want to connect to Power BI.
Reference Image:
&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%2F1e1r31j3pecyo86e3zm2.png" alt="Details" width="697" height="344"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Data connectivity mode
Now, in the above Image you can see &lt;strong&gt;data connectivity mode&lt;/strong&gt;. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The modes include: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Import -&amp;gt; Copies data into Power BI directly. Its best for faster querying.&lt;/li&gt;
&lt;li&gt;Direct Query -&amp;gt;In this mode querying occurs in real-time and directly from your database. It's best when dealing with large datasets. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The type of mode entirely depends on your data set requirements. But the most recommended for beginners is the import mode.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Authentication:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After entering the database details, click ok. &lt;br&gt;
A popup will appear requiring you to enter the database credentials these will be the:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;username -&amp;gt; postgres&lt;/li&gt;
&lt;li&gt;password -&amp;gt; ******&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Click OK. Following these steps you will be able to connect your database to Power BI locally.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Confirming the connection:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To confirm this: you will see the tables from the database you connected.&lt;br&gt;
You can now be able to select the tables that you want to work on.&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%2Fegkkietmx411q79sc189.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%2Fegkkietmx411q79sc189.png" alt="Confirmation" width="800" height="639"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Loading the tables into Power BI:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After connecting your database, you will see a navigator window, through this window you will select the tables that you wabt to load in Power BI.&lt;br&gt;
Simply you do that by checking the boxes. And clicking the &lt;strong&gt;Load&lt;/strong&gt; button.&lt;/p&gt;

&lt;p&gt;Reference Image:&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%2Fyofw3icevjbr4bof3gd1.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%2Fyofw3icevjbr4bof3gd1.png" alt="Loading Data" width="800" height="612"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Common Failures when connecting:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When selecting the data source, you might fail to see the PostgreSQL database.&lt;br&gt;
To solve this: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Download the Npgsql PostgreSQL driver and install it in your computer.&lt;/li&gt;
&lt;li&gt;Then afterwards restart Power BI.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  &lt;u&gt; Connecting Power BI to a cloud database:&lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;The second option, is connecting Power BI to a cloud based database.&lt;br&gt;
In this case, we will be connecting through the aiven platform.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Step 1: Getting the connection details:
Create an aiven account.
After creating an aiven account. Click &lt;strong&gt;create service&lt;/strong&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.amazonaws.com%2Fuploads%2Farticles%2Fjkgdqfmz60bhmpmt2g1b.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%2Fjkgdqfmz60bhmpmt2g1b.png" alt="Creating a service" width="800" height="183"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Upon creating a service, you will need to select a database that you want to connect Power BI to.&lt;br&gt;
In this case, we will be using PostgreSQL for the tutorial.&lt;/p&gt;

&lt;p&gt;Below is a list of the services aiven provides:&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%2Fnu4q2erg3h8zlkf0urkl.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%2Fnu4q2erg3h8zlkf0urkl.png" alt=" " width="800" height="265"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thereafter, choose the plan aiven offers multiple plans ranging from free to pro.&lt;br&gt;
Choose the plan the best suits your needs. After that select the region that is near you.&lt;br&gt;
Then click create service.&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%2Fww7soqdld985mms4xtqr.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%2Fww7soqdld985mms4xtqr.png" alt=" " width="800" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Getting the connection information
After creating a service, you will acquire the connecting credentials.
Below is a sample of the credential details:&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.amazonaws.com%2Fuploads%2Farticles%2F2qzl02k9qd5rfrngivot.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%2F2qzl02k9qd5rfrngivot.png" alt="credential details" width="800" height="322"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Loading the credentials in Power BI&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Open Power BI desktop &lt;/li&gt;
&lt;li&gt;Navigate to the report view by clicking blank report.&lt;/li&gt;
&lt;li&gt;And select the get data.&lt;/li&gt;
&lt;li&gt;For the data source: select database and select postgreSQL.&lt;/li&gt;
&lt;li&gt;Then click connect.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;After that a prompt will appear requiring you to enter the credential details.&lt;br&gt;
For example &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;server: Enter &lt;code&gt;pg-12345.aivencloud.com:12345&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;name: defaultdb&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Downloading SSL certificate&lt;br&gt;
For cloud databases, a SSL certificate is required to ensure secure and realiable connection.&lt;br&gt;
To download the SSL certificate, inside aiven, under the overview you will see the connection information&lt;br&gt;
From this page you can also download the &lt;strong&gt;CA certificate&lt;/strong&gt;. The CA certificate verifies the identity of your database. &lt;br&gt;
Simply, it's for establishing a trust between Power BI + Postgres + Aiven&lt;br&gt;
In most cases it usually looks like: &lt;code&gt;ca.pem&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configuring SSL Mode&lt;br&gt;
Now that you have acquired a CA certificate you will need to configure the settings in Power BI.&lt;br&gt;
Therefore, when Power BI asks for an encryption setting choose&lt;br&gt;
&lt;strong&gt;SSL MODE: required&lt;/strong&gt;&lt;br&gt;
The importance of selecting this mode is that all the transactions between Power BI and PostgreSQL will be encrypted using the SSL/TLS.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Authentication&lt;br&gt;
After that, Power BI will prompt you for an authentication. Whereby, you will be required to enter your credentials.&lt;br&gt;
Example:&lt;br&gt;
1.username:avnadmin&lt;br&gt;
2.password:********&lt;br&gt;
Then &lt;strong&gt;Click Connect&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;u&gt;Loading Data into Power BI:&lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;Now that we have connected Power BI to our PostgreSQL database and also loaded tables. The next thing we will explore is how relationships are created between the tables.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Creating Relationships in Power BI:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The key to creating relationships, is understanding two concepts that is  the primary key and the foreign key.&lt;/p&gt;

&lt;p&gt;1.Primary key- This is a unique identifier in a table.&lt;/p&gt;

&lt;p&gt;By unique -&amp;gt; it means it cannot be replicated. They include National IDs, CustomerIDs. There can never be a single person with two national IDs e.t.c&lt;br&gt;
2.Foreign key -&amp;gt; a foreign key its a primary key inside another table.&lt;/p&gt;

&lt;p&gt;For example: Your database can contain customers, products, sales and inventory tables.&lt;br&gt;
Inside the customers you will have a customer_id now this is a primary key, but the customer_id we still appear at the sales table this is a foreign key.&lt;br&gt;
In this case the customer_id links the customers and sales table.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Automatic relationship creation:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Power BI can automatically detect relationships after you have loaded your data into it.&lt;/p&gt;

&lt;p&gt;But your data needs: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;to be correctly structured, &lt;/li&gt;
&lt;li&gt;to have well defined columns &lt;/li&gt;
&lt;li&gt;to have correct data types&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;By clicking the model view in Power BI you will see the relationships&lt;/p&gt;

&lt;p&gt;Illustration:&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%2Fwu52rhob8vl5w96xklo9.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%2Fwu52rhob8vl5w96xklo9.png" alt=" " width="800" height="541"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Manual creation of relationships in Power BI
In a case where Power BI doesnot automatically detect relationships, you can create the manually.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Still at the model view.&lt;/li&gt;
&lt;li&gt;Drag one common column and match it with another column from another table.&lt;/li&gt;
&lt;li&gt;A relationship dialog box will appear.&lt;/li&gt;
&lt;li&gt;To confirm column pairing, relationship type and the cross-filter direction.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Using the manage relationships method:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;-&amp;gt;&lt;/strong&gt; Go to the modelling tab.&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%2Fgqa48fcejdrqwmmeoo1n.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%2Fgqa48fcejdrqwmmeoo1n.png" alt=" " width="800" height="134"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;-&amp;gt;&lt;/strong&gt; Select New relationship&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%2F3iestk7m9fop9bb6z9wj.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%2F3iestk7m9fop9bb6z9wj.png" alt="New relationship" width="800" height="708"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-&amp;gt;&lt;/strong&gt; Select the first table and the common column&lt;br&gt;
&lt;strong&gt;-&amp;gt;&lt;/strong&gt; Then, select the second table.&lt;br&gt;
&lt;strong&gt;-&amp;gt;&lt;/strong&gt; Choose a relationship type and cross-filter direction.&lt;br&gt;
&lt;strong&gt;-&amp;gt;&lt;/strong&gt; Click OK.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;u&gt;Data Modelling in Power BI:&lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;Data modelling is the process of structuring and connecting data from various sources.&lt;br&gt;
Through data modelling, data analysis becomes accurate, efficient and easy.&lt;br&gt;
There are three types of data modelling:&lt;br&gt;
&lt;strong&gt;-&amp;gt;&lt;/strong&gt; Conceptual data modelling - Just like its name &lt;strong&gt;&lt;em&gt;conceptual&lt;/em&gt;&lt;/strong&gt; its  basically a concept defined by the business stakeholders, collaborating with the technical teams.&lt;br&gt;
It defines the entities and relationships between them.&lt;br&gt;
&lt;strong&gt;-&amp;gt;&lt;/strong&gt; Logical data modelling - This level spices things from the conceptual model, actually it builds more from the conceptual.&lt;br&gt;
In the logical model attributes and keys are added to the defined entities.&lt;br&gt;
&lt;strong&gt;-&amp;gt;&lt;/strong&gt; Physical data modelling - This is the most detailed level.&lt;br&gt;
Its the actually implementation of the logical model.&lt;br&gt;
In this you can actually visualize how data is stored in databases, also it includes the data types and Indexes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;u&gt; Components of Data Modelling: &lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Relationships:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Relationships are the main feature of data modelling. &lt;/p&gt;

&lt;p&gt;They define how tables connect based on a common column. &lt;/p&gt;

&lt;p&gt;Types of relationships include:&lt;br&gt;
&lt;strong&gt;-&amp;gt;&lt;/strong&gt; One-to-One-One user can only have one profile&lt;br&gt;
&lt;strong&gt;-&amp;gt;&lt;/strong&gt; One-to-Many-One customer can have multiple orders.&lt;br&gt;
&lt;strong&gt;-&amp;gt;&lt;/strong&gt; Many_to-Many-Many-Many students can register for multiple classes&lt;br&gt;
Basically, these relationships help Power BI connect data logically.&lt;/p&gt;

&lt;p&gt;2.Star Schema Method:&lt;br&gt;
The star schema, its the most recommended and widely adopted model in Power BI.&lt;br&gt;
It usually takes the shape of a star with a:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Facts table -&amp;gt; which contains measurable data like sales, revenue e.t.c&lt;/li&gt;
&lt;li&gt;Dimension table -&amp;gt;which contains descriptive data, this is data that describes more of what happened.
For example: 
(products) -&amp;gt; product_details, Product_category&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The advantages of star schema include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Fast performance - due to optimized quering data retrieval becomes faster.&lt;/li&gt;
&lt;li&gt;Ease of use - application of the star schema is straight forward.&lt;/li&gt;
&lt;li&gt;Lower Maintenance - due to the less complexity of the dimension tables, maintaining the star schema is simple and easy.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Importance of relationships to Data analysis:&lt;/strong&gt;&lt;br&gt;
Relationships in Power BI are very important as they tell us how different tables connect and relate to each other.&lt;br&gt;
Lets discuss how this helps Power BI analyze data correctly.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Improves the performance analysis -&amp;gt; Through linking tables efficiently, relationships help Power BI reduce the amount of data processed for a retrieval.&lt;/li&gt;
&lt;li&gt;Data integrity and accuracy -&amp;gt; Relationships ensure there is consistency through the data.&lt;/li&gt;
&lt;li&gt;Reduce redundancy -&amp;gt; Relationships ensures there are no duplicates, by making sure that data is only stored once and is referenced from other tables.&lt;/li&gt;
&lt;li&gt;Table connections -&amp;gt; Power BI connects different tables based on the matching columns, through this data retrieval becomes easy. For example you can match a customerID in customers with a Sales or Orders. Without relationships this is impossible.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  &lt;u&gt; The Importance Of SQL Skills &lt;/u&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Access to data sources -&amp;gt; Having SQL skills allows analysts to access and connect data from various sources.(e.g. MySQL, PostgreSQL)&lt;/li&gt;
&lt;li&gt;Handling large datasets -&amp;gt; SQL concepts enable you as a data analyst to manipulate and work on large data easily and efficiently.&lt;/li&gt;
&lt;li&gt;Data cleaning and preparation -&amp;gt; Oftenly, Raw data is messy but SQL has powerful functions for data cleaning, filtering and removing duplicates.&lt;/li&gt;
&lt;li&gt;Perform complex analysis -&amp;gt; Through the use of operations like &lt;code&gt;joins&lt;/code&gt; anaysts can connect different tables, this allows for comprehensive analysis e.g. you can link customerID with sales/orders table to view the amount of peroducts bought by a customer.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;How SQL is used For Daily Tasks:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Data Retrieval:
You can retrieve or get data from a specific path you want:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;setting a specific search_path :&lt;/em&gt;&lt;/strong&gt;&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%2Fa07pz0anwx94v4y272a6.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%2Fa07pz0anwx94v4y272a6.png" alt="search_path" width="386" height="53"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Data retrieval:&lt;/em&gt;&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%2Fndej8bi3a76q2nsyf35o.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%2Fndej8bi3a76q2nsyf35o.png" alt="Data retrieval" width="365" height="98"&gt;&lt;/a&gt;&lt;br&gt;
The above example shows data retrieval from specific tables.&lt;/p&gt;

&lt;p&gt;2.Data Filtering:&lt;br&gt;
SQL allows you to select a subset of data from a larger dataset by applying conditions.&lt;br&gt;
Filtering in SQL, the &lt;code&gt;where&lt;/code&gt; clause is used with the &lt;code&gt;select&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt; and &lt;code&gt;delete&lt;/code&gt; statements.&lt;/p&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fusydnncb5zbe0fbc0wio.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%2Fusydnncb5zbe0fbc0wio.png" alt="Data Filtering" width="606" height="104"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Performing Aggregations:
SQL can summarize your data based on several functions like:
SUM(), COUNT(), AVG() &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Example: &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%2Fq2muv2wysrmygvrpkxpr.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%2Fq2muv2wysrmygvrpkxpr.png" alt="Aggregations" width="441" height="78"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;4.Preparing data before building dashboard:&lt;/p&gt;

&lt;p&gt;For you to build a dashboard, the data has to be structured properly for the readiness of analysis.&lt;/p&gt;

&lt;p&gt;The following are methods of preparing data before building a dashboard:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Performing Joins:
Joins combine multpile tables based on matching columns
Example: Below you can see we have joined the customers and sales table base on the customer_id. We are finding top 5 customers who made the highest purchase&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.amazonaws.com%2Fuploads%2Farticles%2Fi4k6kxkvcvpgdu913fk9.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%2Fi4k6kxkvcvpgdu913fk9.png" alt="Joins" width="692" height="206"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Adding new calculated columns:
This adds new caluclated columns to your table
In this case we use aliases &lt;code&gt;AS&lt;/code&gt; to name the new columns'
For example:&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.amazonaws.com%2Fuploads%2Farticles%2Fnelm7avfrpe1okbvqxgj.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%2Fnelm7avfrpe1okbvqxgj.png" alt="Adding new columns" width="585" height="106"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Handling Missing Values:
Nulls in your data can result to incorrect or inaccurate results. Therefore, replacing nulls is essential for accurate results.
We use the &lt;code&gt;COALESCE()&lt;/code&gt; function.
Example:&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.amazonaws.com%2Fuploads%2Farticles%2F7xmks2suc1aicv9byg4b.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%2F7xmks2suc1aicv9byg4b.png" alt="Handling nulls" width="521" height="54"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sorting Data:
This is organizing data for better analysis &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.amazonaws.com%2Fuploads%2Farticles%2Fdl2wavrmojcetoueymrf.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%2Fdl2wavrmojcetoueymrf.png" alt="Sorting Data" width="800" height="145"&gt;&lt;/a&gt;&lt;br&gt;
In the above example you can see we have sorted the names of the customers in a descending order.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;u&gt; Conclusion: &lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;Connecting databases to Power BI is an essential skill for any data analyst. This gives you access to real-time and realible data for analysis. Therefore, based on your data requirements there are multiple options to connect. At first, it seems complicated. However, with more practice it becomes easy to understand and apply. Remember to always practice, trial and error builds confidence and you will be able to acquire the expertise required to connect Power BI to local or cloud databases as well as work with the data.  &lt;/p&gt;

</description>
      <category>productivity</category>
      <category>mysql</category>
      <category>data</category>
      <category>datascience</category>
    </item>
    <item>
      <title>Joins and Window Functions in SQL.</title>
      <dc:creator>Derick Kimanthi</dc:creator>
      <pubDate>Mon, 02 Mar 2026 16:49:37 +0000</pubDate>
      <link>https://dev.to/derick_kimanthi/joins-and-window-functions-in-sql-3e3m</link>
      <guid>https://dev.to/derick_kimanthi/joins-and-window-functions-in-sql-3e3m</guid>
      <description>&lt;h2&gt;
  
  
  &lt;u&gt;Introduction&lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;In data analysis, SQL plays a vital role for querying and transforming data. Inbuilt features like joins and window functions enable analysts to combine datasets into important and meaningful views as well as perform basic and complex calculations. In this article, we will discuss how joins and window functions work and their importance in analytics.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;u&gt;Joins&lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;Joins are used to combine rows from two or more tables based on a common column.&lt;br&gt;
Usually, the common column its the primary key and a foreign key.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is the Importance Of Joins?&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Relational Data Connection: Joins allow easy connection of tables.   For Example: You can match a customer_id in sales table with a customers table.&lt;/li&gt;
&lt;li&gt;Normalization: Joins can help to normalize data i.e. eliminate duplicates therefore improving data storage, by storing data into different tables rather than repeating data which brings inconsistencies.&lt;/li&gt;
&lt;li&gt;Performance Optimization: Using joins like the (inner join) improves data retrieval and enhances fast filtering also.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;
  
  
  &lt;u&gt;Types of Joins Include:&lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;INNER JOIN&lt;/strong&gt;&lt;br&gt;
The INNER JOIN returns only matching records from both tables.&lt;br&gt;
Excludes non-matching data from the result&lt;br&gt;
For Example: Matching employees from employees table with departments table the common column being the department_id.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT e.name, d.department_name
FROM Employees e
INNER JOIN Departments d
ON e.department_id = d.department_id;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Visual Representation:&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%2Fm1teq8idv3dsikani8cw.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%2Fm1teq8idv3dsikani8cw.png" alt="INNER JOIN" width="800" height="345"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LEFT JOIN&lt;/strong&gt;&lt;br&gt;
Also known as left outer join.&lt;br&gt;
Returns all records from the left table, and matched records from the right.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT e.name, d.department_name
FROM Employees e
LEFT JOIN Departments d
ON e.department_id = d.department_id;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Visual Representation:&lt;/strong&gt;&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%2Ff7dgygxkj9ewnz911x0u.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%2Ff7dgygxkj9ewnz911x0u.png" alt="LEFT JOIN" width="788" height="365"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;RIGHT JOIN&lt;/strong&gt;&lt;br&gt;
Also known as right outer join&lt;br&gt;
Returns all records from the right table, and matched records from the left&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT e.name, d.department_name
FROM Employees e
RIGHT JOIN Departments d
ON e.department_id = d.department_id;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Visual Representation:&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%2Fs6oa4r4bxnvobzlpat9d.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%2Fs6oa4r4bxnvobzlpat9d.png" alt="RIGHT JOIN" width="800" height="451"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;FULL JOIN&lt;/strong&gt;&lt;br&gt;
Also known as full outer join. &lt;br&gt;
Returns all records when a match exists in either table.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT e.name, d.department_name
FROM Employees e
FULL JOIN Departments d
ON e.department_id = d.department_id;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Visual Representation:&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%2Fcr6wdu6ccf1bad70n6ut.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%2Fcr6wdu6ccf1bad70n6ut.png" alt="FULL JOIN" width="800" height="340"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;u&gt;WINDOW FUNCTIONS IN SQL&lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;Window functions allow you to perform calculations across a defined set of rows (window), without collapsing the result into a single value.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Common uses for Window Functions:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Aggregates-&amp;gt;calculates sum, averages, count across a partition of rows.&lt;/li&gt;
&lt;li&gt;Rankings-&amp;gt;They assign ranks to rows. Very useful when performing N-queries or ordered comparisons.&lt;/li&gt;
&lt;li&gt;Running totals-&amp;gt;they generate cumulative totals over a period of time.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To define a window for calculation, you use the &lt;code&gt;OVER()&lt;/code&gt; clause.&lt;br&gt;
Through this you can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;PARTITION BY-&amp;gt;it divides data into groups but doesn't collapse the rows.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ORDER BY-&amp;gt;order by specifies the order of the rows.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;General syntax for a window function:&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;SELECT column_name1, &lt;br&gt;
       window_function(column_name2) &lt;br&gt;
       OVER ([PARTITION BY column_name3] [ORDER BY column_name4]) AS new_column&lt;br&gt;
FROM table_name;&lt;/code&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Types of window functions in SQL
&lt;/h2&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;A. AGGREGATE FUNCTIONS&lt;/strong&gt;&lt;/u&gt;&lt;br&gt;
Aggregate functions perform aggregates over a window of rows.&lt;br&gt;
They include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SUM(): Sums values within a window.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sample Query: Total salary by department.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT name,department,salary,
SUM(salary) OVER (PARTITION BY department) AS dept_total
FROM employees;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;AVG(): Calculates the average value within a window.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sample Query: Calculating the average salary within each department.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT Name, Age, Department, Salary, 
AVG(Salary) OVER( PARTITION BY Department) AS Avg_Salary
FROM employee
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;COUNT(): Counts the rows within a window.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sample Query: Counting rows within a specific group.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT OrderID,CustomerID,OrderDate,
COUNT(OrderID) OVER (PARTITION BY CustomerID) AS OrdersPerCustomer
FROM Orders;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;MAX(): Returns the maximum value in the window.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sample Query: Finding the maximum salary within each department&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT  employee_id, department, salary,
MAX(salary) OVER(PARTITION BY department) AS dep_maximum_salary
FROM employee;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;MIN(): Returns the minimum value in the window.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sample Query: finding the minimum salary within each department and displaying each employee's individual details.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT department, employee_name, salary,
MIN(salary) OVER (PARTITION BY department) AS min_department_salary
FROM employees;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;&lt;u&gt;B. RANKING FUNCTIONS&lt;u&gt;&lt;/u&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;They assign ranks to rows within a specified area.&lt;br&gt;
They include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ROW_NUNMBER()-&amp;gt;Assigns a unique number to each row in the result set.
It automatically increments by 1 for every row.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sample Query:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT name, salary,
ROW_NUMBER() OVER (ORDER BY salary DESC) AS row_num
FROM employees;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;RANK()-&amp;gt;They assign ranks rows, when they find a duplicate they skip.
Simply, they organize data and analyze data.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sample Query: Ranking employees by salary, as well as skipping where salary is equal.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT Name, Department, Salary,
RANK() OVER(PARTITION BY Department ORDER BY Salary DESC) AS emp_rank
FROM employee;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;DENSE_RANK()-&amp;gt;Assigns ranks to rows without skipping rank numbers for duplicates.
Its usually the same as Rank() but doesn't skip.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sample Query: Ranking employees by salary without skipping ranks&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT Name, Department, Salary,
DENSE_RANK() OVER(PARTITION BY Department ORDER BY Salary DESC) AS emp_dense_rank
FROM employee;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;PERCENT_RANK()-&amp;gt;shows where a row stands compared to others in the same group.
Sample Query: finding the relative salary position of each employee within a department.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT Name, Department, Salary,
PERCENT_RANK() OVER(PARTITION BY Department ORDER BY Salary DESC) AS emp_percent_rank
FROM employee;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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

&lt;p&gt;Joins and window functions are very important in SQL. As they make data analysis easier and effective. Therefore, learning and practicing these topics is essential for any data analyst.&lt;/p&gt;

</description>
      <category>datascience</category>
      <category>sql</category>
      <category>database</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Data Cleaning, DAX And Dashboards in PowerBI.</title>
      <dc:creator>Derick Kimanthi</dc:creator>
      <pubDate>Mon, 09 Feb 2026 14:23:31 +0000</pubDate>
      <link>https://dev.to/derick_kimanthi/data-cleaning-dax-and-dashboards-in-powerbi-50n5</link>
      <guid>https://dev.to/derick_kimanthi/data-cleaning-dax-and-dashboards-in-powerbi-50n5</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION:
&lt;/h2&gt;

&lt;p&gt;Having messy data is completely normal, but working with messy data can really be overwhelming. Luckily, PowerBI provides a platform that makes data cleaning and analysis fast and easy. In this article I will explain how analysts translate messy data using key tools in PowerBI such as: PowerQuery, Data Analysis Expression (DAX) and Dashboards to visualize key insights.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Data cleaning?
&lt;/h2&gt;

&lt;p&gt;Data cleaning is the process of analysing, detecting and correcting: inaccurate, incomplete and poorly formatted data within a given dataset.&lt;/p&gt;

&lt;h2&gt;
  
  
  Loading Data in PowerBI.
&lt;/h2&gt;

&lt;p&gt;After Opening PowerBI, The first page will be about you connecting data through a specific data source.&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%2Ftj1ix9gwc7lq8zi23l1w.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%2Ftj1ix9gwc7lq8zi23l1w.png" alt="Landing Page" width="800" height="257"&gt;&lt;/a&gt;&lt;br&gt;
You can select through various data sources including Excel and Databases including SQL.&lt;br&gt;
After loading your data you will need to spot the errors and inconsistencies in your data before cleaning.&lt;br&gt;
To do this you can select the table mode. For easy analysis and identification.&lt;br&gt;
The red circle is where you select to have the table view:&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%2Fgl5h8tllxdugoj66db3o.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%2Fgl5h8tllxdugoj66db3o.png" alt="Table View" width="800" height="393"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  "How to Identify Messy Data."
&lt;/h2&gt;

&lt;p&gt;Identifying errors and inconsistencies is key in the data cleaning process. Below are the signs of a messy data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Signs of Messy Data:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Dates Labelled as Texts.&lt;/li&gt;
&lt;li&gt;Numbers stored as Texts.&lt;/li&gt;
&lt;li&gt;Single columns holding multiple values.&lt;/li&gt;
&lt;li&gt;Nulls and blanks.&lt;/li&gt;
&lt;li&gt;Duplicate rows.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Implementing PowerQuery In PowerBI
&lt;/h2&gt;

&lt;p&gt;In powerBI data is transformed in the powerQuery Editor. To open the PowerQuery editor:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to the home tab.&lt;/li&gt;
&lt;li&gt;Click the transform data button.
&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%2Fvb7de9ftgzhxty7kapzu.png" alt="Transform Data" width="800" height="90"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;PowerBI provides a feature under powerQuery that helps you assess the errors in your data set quickly, therefore making the data cleaning process efficient and quicker.&lt;br&gt;
To activate this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go the view tab.&lt;/li&gt;
&lt;li&gt;Check the column quality checkbox.&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.amazonaws.com%2Fuploads%2Farticles%2Fs6niffwb37kzu3orkc5o.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%2Fs6niffwb37kzu3orkc5o.png" alt="Column Quality" width="800" height="122"&gt;&lt;/a&gt;&lt;br&gt;
As illustrated in the image above: If there were any errors from the data the quality would clearly show.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step1:Fixing Data types.
&lt;/h2&gt;

&lt;p&gt;Go through your data and ensure that each column falls in to their correct data type. &lt;br&gt;
For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Date should be in Date format.&lt;/li&gt;
&lt;li&gt;Quantity should be in Whole number.&lt;/li&gt;
&lt;li&gt;Revenue should be in  Decimal number.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To do this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Right click on a column. &lt;/li&gt;
&lt;li&gt;Then select change type. &lt;/li&gt;
&lt;li&gt;Select the appropriate data type from the list.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step2:Handling missing values.
&lt;/h2&gt;

&lt;p&gt;When replacing missing values, don't just guess the values this is because the data needs to maintain its originality. So, some business logic is applied in order to maintain consistency without altering the original data.&lt;br&gt;
For Example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For a blank CITY field you can replace with "&lt;strong&gt;&lt;em&gt;Unknown&lt;/em&gt;&lt;/strong&gt;"or "&lt;strong&gt;&lt;em&gt;NotGiven&lt;/em&gt;&lt;/strong&gt;".&lt;/li&gt;
&lt;li&gt;For a blank DISCOUNT field you can replace the null with 0. This ensures that aggregation calculations can be performed on the column.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To Do This:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to the transform tab.&lt;/li&gt;
&lt;li&gt;Select the replace values.&lt;/li&gt;
&lt;li&gt;Find the value you want to replace then input the value to replace with.&lt;/li&gt;
&lt;li&gt;Click Ok.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step3:Cleaning Textual Data.
&lt;/h2&gt;

&lt;p&gt;To clean text data in PowerBI:&lt;br&gt;
-Click transform tab.&lt;br&gt;
-Select format.&lt;br&gt;
Inside the list you will find various text formatting tools, they include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Trim- this tool removes extra spaces into text.&lt;/li&gt;
&lt;li&gt;Lowercase-It converts all text to lowercase.&lt;/li&gt;
&lt;li&gt;Uppercase-It converts all text to uppercase.&lt;/li&gt;
&lt;li&gt;Capitalize each word-It converts text into Proper case.&lt;/li&gt;
&lt;li&gt;Clean-It removes non-printable characters.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Step4:Removing Duplicates.
&lt;/h2&gt;

&lt;p&gt;Duplicate values return inaccurate results when doing calculations.&lt;br&gt;
You can remove duplicate values on a single column or multiple columns. &lt;br&gt;
To do this in a single column: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Right click on the column.&lt;/li&gt;
&lt;li&gt;Then select remove duplicates.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To do this in multiple columns:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hold ctrl then right click the columns you want.&lt;/li&gt;
&lt;li&gt;Then got to home tab.&lt;/li&gt;
&lt;li&gt;Select Remove rows.&lt;/li&gt;
&lt;li&gt;Select Remove duplicates.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step5:Spliting Columns.
&lt;/h2&gt;

&lt;p&gt;Spliting data in powerBI depends with how your data is mixed up.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.First Scenario:Spliting by a delimiter.&lt;/strong&gt;&lt;br&gt;
A delimeter is a character that's used to separate values within text. Delimeters include: comma(,); vertical bar (|),semicolon(;). For example: Laptop|Electronics|LT001 The delimiter is the Vertical bar(|).&lt;br&gt;
To split this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to the Home tab.&lt;/li&gt;
&lt;li&gt;Select split columns.&lt;/li&gt;
&lt;li&gt;Choose the  "by delimiter" option.&lt;/li&gt;
&lt;li&gt;Select the delimiter, In this case its the vertical bar(|).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2.Second Scenario:Split by Letter Case.&lt;/strong&gt;&lt;br&gt;
If you have dataset with joined values e.g "FirstNameLastName" you can implement the split by lettercase.&lt;br&gt;
To split this: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Lowercase to UpperCase: It splits text at the point where a lowercase letter is followed by an uppercase letter.&lt;/li&gt;
&lt;li&gt;UpperCase to LowerCase: It splits text at the point where an uppercase letter is followed by a lowercase letter.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3.Third scenario:Split by Digit/Non-digit.&lt;/strong&gt;&lt;br&gt;
This method works best to split text from numbers. Especially when there is no consistency delimeter.&lt;br&gt;
For example: "Product123"&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Digit To Non-Digit-splits the text when a number starts. e.g"123product" becomes "123" and "Product".&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Non-digit to Digit-splits the text wherever a letter transitions to a number. e.g "Product123" becomes "Product" and "123".&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Key takeaway:
&lt;/h2&gt;

&lt;p&gt;Data cleaning is a dynamic process, each dataset will always have different requirements. Therefore, by practicing you will be able to build the skills to handle this challenges easily.&lt;/p&gt;

&lt;h2&gt;
  
  
  DATA ANALYSIS EXPRESSION (DAX)
&lt;/h2&gt;

&lt;p&gt;DAX(Data Analysis Expression)- refers to a formula language in powerBI that's used to create powerful calculations and data models.&lt;br&gt;
DAX can build:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Measures-Its a dynamic calculation that is calculated only when a visual is required.&lt;/li&gt;
&lt;li&gt;Calculated columns-New columns added to a table and calculation performed row by row.&lt;/li&gt;
&lt;li&gt;Calculated tables-Its derived from existing tables using DAX formula.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Common DAX functions.
&lt;/h2&gt;

&lt;p&gt;Dax has a variety of functions, they are organized into different categorizes for different uses. &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Aggregation function- these functions perform calculations on values. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;They Include: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sum-adds all numeric values in a column.&lt;/li&gt;
&lt;li&gt;Average-Returns the average of values in a column.&lt;/li&gt;
&lt;li&gt;Count-Counts the number of rows or values in a column.&lt;/li&gt;
&lt;li&gt;Min-Returns the minimum numeric value in a column.&lt;/li&gt;
&lt;li&gt;Max-Returns the largest numeric value in a column.&lt;/li&gt;
&lt;li&gt;Product-Returns the product of numbers in a column.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;2.Logical Functions-Logical functions in DAX compare values, test conditions and return a TRUE or FALSE.&lt;/p&gt;

&lt;p&gt;They Include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;IF-Checks a condition and returns one value if TRUE, else it returns a another value. &lt;/li&gt;
&lt;li&gt;AND- Returns a TRUE if all conditions are TRUE.&lt;/li&gt;
&lt;li&gt;OR-Checks if one condition is TRUE and returns a TRUE.&lt;/li&gt;
&lt;li&gt;NOT- The NOT function reverses a logical expression. e.g Reverses TRUE to FALSE or FALSE to TRUE.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;3.Filter Functions- Filter functions in DAX are used to control context.&lt;br&gt;
They Include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ALL-It returns all rows or values within a column ignoring any filters applied.&lt;/li&gt;
&lt;li&gt;CALCULATE-Evaluates an expression in a modified filter context.&lt;/li&gt;
&lt;li&gt;FILTER-The filter function creates a newtable based on a specific data.&lt;/li&gt;
&lt;li&gt;ORDERBY-Defines the columns that determine the sort order.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;4.Date and time functions-Extracts insights and data from date and time.&lt;br&gt;
They Include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;DATE Function-Returns the specified date in datetime format.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;DAY Function-Extracts the days from a specified date.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;DATEDIFF-Returns the difference between two dates.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;YEAR Function-Returns the year of a date in a four digit format. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;QUARTER FUNCTION-Returns the quarter as a number from 1 to 4.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;TIME-Converts hours, minutes, and seconds given as a number from 0 to 59.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;WEEKNUM-Returns the week number for the given date and year according to the return type value.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;5.Iterator Functions-They evaluate row by row, to perform calculations.&lt;br&gt;
Common Iterator Functions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;SUMX-Iterates through a table then evaluates an expression for each row and then sums the result.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AVERAGEX- Calculates the average for an expression.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;MAXX/MINX-Finds the maximum or minimum value.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;RANKX-used to rank items based on a specific expression.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  DASHBOARDS IN POWERBI.
&lt;/h2&gt;

&lt;p&gt;A dashboard its a single-page document used to visualize key insights drawn from the data. They are used to monitor key performance indicators (KPIs) at a glance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Characteristics of a Good Dashboard&lt;/strong&gt;&lt;br&gt;
A good dashboard should be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Relevant-Make sure to focus on key KPIs that align to the business requirements and goals of the analysis.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Clear-Make sure to use clear visuals and appropriate charts for easier understanding.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Consistent-Make sure to maintain a common color and fonts through the entire page that is relevant to your audience.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Interactive-A good dashboard should be responsive, add slicers and filters to enable easy analysis through the data. &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Components of a PowerBI dashboard:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Title-Should be in a large font, placed in the top of the page.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;2.Key Performance Indicators (KPIs)- These are high-level critical numbers that gauge the performance.&lt;br&gt;
They are structured at the top, mostly after the title. They should be in big and bold characters.&lt;/p&gt;

&lt;p&gt;An Example of KPIs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Total Sales.&lt;/li&gt;
&lt;li&gt;Total Profits.&lt;/li&gt;
&lt;li&gt;Total Revenue.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;3.Charts(Visual Insights)-These are graphical representation of data.&lt;/p&gt;

&lt;p&gt;They Include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Card Visual-Displays a single value of a calcualation.&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.amazonaws.com%2Fuploads%2Farticles%2Ft0arcyn5xwoq04jp7hy6.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%2Ft0arcyn5xwoq04jp7hy6.png" alt="Card visual" width="282" height="165"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Multi-row card-Displays multiple values of KPIs together.&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.amazonaws.com%2Fuploads%2Farticles%2Fielarzzbxcqs8ixvpksm.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%2Fielarzzbxcqs8ixvpksm.png" alt="Multi-row card" width="477" height="242"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Column and Bar Charts-A column chart displays data using vertical and 
horizontal bars respectively to compare values across categories.&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.amazonaws.com%2Fuploads%2Farticles%2Fyexdvl9sd6fhdr5gaetf.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%2Fyexdvl9sd6fhdr5gaetf.png" alt="Column charts" width="800" height="268"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pie Chart-Shows distribution of data in different sectors.&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.amazonaws.com%2Fuploads%2Farticles%2Fs309jhy7qm9ayxaeamft.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%2Fs309jhy7qm9ayxaeamft.png" alt="Pie chart" width="454" height="366"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Line Chart-A line chart shows trends over time.&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.amazonaws.com%2Fuploads%2Farticles%2Fr0a5w0lwwrj2k3awxma2.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%2Fr0a5w0lwwrj2k3awxma2.png" alt="Line chart" width="516" height="329"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Area Chart-An area chart is a line chart, with the area under filled.&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.amazonaws.com%2Fuploads%2Farticles%2F9q6cypnay6ar8uxaw2uo.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%2F9q6cypnay6ar8uxaw2uo.png" alt="Area Chart" width="564" height="344"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Funnel Chart-Shows values across sequential stages.&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.amazonaws.com%2Fuploads%2Farticles%2F9of6xo10048d7mi3x873.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%2F9of6xo10048d7mi3x873.png" alt="IFunnel Chart" width="443" height="380"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Donught Chart-Similar to a pie chart but it has a hole in the middle.&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.amazonaws.com%2Fuploads%2Farticles%2Fm1u29hjs8ngd7catw79z.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%2Fm1u29hjs8ngd7catw79z.png" alt="Donught Chart" width="408" height="378"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Table-A table shows data in rows and columns.&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.amazonaws.com%2Fuploads%2Farticles%2Fumu9g799khg8xlz26vdg.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%2Fumu9g799khg8xlz26vdg.png" alt="Table" width="755" height="307"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Matrix-Its a pivot table with rows and columns.&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.amazonaws.com%2Fuploads%2Farticles%2F3wa12u2dnbqgaffkr7u2.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%2F3wa12u2dnbqgaffkr7u2.png" alt="Matrix" width="433" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Q&amp;amp;A visual-It self-analyzes your data. Allowing users to ask natural questions.&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.amazonaws.com%2Fuploads%2Farticles%2Fb97kculw0k5x4fio80l1.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%2Fb97kculw0k5x4fio80l1.png" alt="Q&amp;amp;A" width="498" height="443"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Stacked Column Chart-It compares multiple values side by side.&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.amazonaws.com%2Fuploads%2Farticles%2Fu4rjrjm1y55zp3c2pifg.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%2Fu4rjrjm1y55zp3c2pifg.png" alt="Stacked Column" width="523" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Stacked Bar Chart-Its similar to a Column chart but displays horizontally.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scatter Chart-It shows a relationship between two variables.&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%2Fwj3wipayz39jkro5e6je.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%2Fwj3wipayz39jkro5e6je.png" alt="Scatter Chart" width="607" height="362"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;WaterFall Chart-It shows how values drop or rise over a period of time.&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%2Fsyl1l071u67y018pvb41.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%2Fsyl1l071u67y018pvb41.png" alt="WaterFall Chart" width="724" height="476"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Combo Chart-Its a combination of column and line chart.&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%2Fuwzrqjo7sf7nn5f75a0a.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%2Fuwzrqjo7sf7nn5f75a0a.png" alt="Combo Chart" width="475" height="332"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Map-It displays data distribution across different geographic regions.&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.amazonaws.com%2Fuploads%2Farticles%2Fpqwdgvesgm1cvmp3kcui.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%2Fpqwdgvesgm1cvmp3kcui.png" alt="MAP" width="457" height="332"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Python Chart-Implements python to create custom charts.&lt;/li&gt;
&lt;li&gt;R Visual-Implement R to create custom charts.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Creating Dashboards In PowerBI:
&lt;/h2&gt;

&lt;p&gt;Creating a Dashboard involves organizing multiple visuals like (charts and KPIs) together. This allows you to communicate key insights therefore supporting decision making.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A dashboard should:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Consist of one unscrollable page.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Shows critical metrics.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Be interactive.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Update automatically.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Layout And Structure:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Title - placed at the top.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;KPIs - positioned at the top row.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Charts -Displayed at the middle.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Filters and Slicers- should be aligned at the side (left or right).&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Illustration Of A PowerBI Dashboard:&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%2Fvd2wkh1fklsltxixk54t.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%2Fvd2wkh1fklsltxixk54t.png" alt="Dashboard" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What To Avoid.
&lt;/h2&gt;

&lt;p&gt;Avoid the following when creating dashboards:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Avoid cluttering many charts together (3-6 are enough).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Repeating charts with the same data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Adding to many decorative colors (Stick to a consistent color that aligns with your audience).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Raw data or tables in to your dashboard.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Calculated columns-Do not include calculated columns in your dashboard.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>datascience</category>
      <category>webdev</category>
      <category>learning</category>
      <category>data</category>
    </item>
    <item>
      <title>Data Modelling And Schemas In PowerBI.</title>
      <dc:creator>Derick Kimanthi</dc:creator>
      <pubDate>Mon, 02 Feb 2026 14:51:53 +0000</pubDate>
      <link>https://dev.to/derick_kimanthi/data-modelling-and-schemas-in-powerbi-5efp</link>
      <guid>https://dev.to/derick_kimanthi/data-modelling-and-schemas-in-powerbi-5efp</guid>
      <description>&lt;h2&gt;
  
  
  What is data modelling?
&lt;/h2&gt;

&lt;p&gt;Data modelling refers to the process of structuring and organizing data into a logical models (tables), therefore creating relationships that enable;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Easy understanding of data by aggregating data accurately and correctly.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Providing realible insights, through proper structuring.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Maintaining data integrity.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Facts And Dimension Tables:
&lt;/h2&gt;

&lt;p&gt;There are two types of tables in data modelling: i.e Facts and Dimension tables.&lt;br&gt;
&lt;strong&gt;Facts Tables&lt;/strong&gt;&lt;br&gt;
They contain measurable data that is &lt;strong&gt;&lt;em&gt;numeric data&lt;/em&gt;&lt;/strong&gt;. Includes: Sales, Amounts, Quantity, Cost etc. Data that contains numbers.&lt;br&gt;
&lt;strong&gt;Dimension Tables&lt;/strong&gt;&lt;br&gt;
They help in describing facts. Instead of having numerical values, they are more of textual content. They contain describe attributes. For example: We can have a product; then have a ProductName, ProductCategory, ProductKey, all these you see are attributes that describe a &lt;strong&gt;&lt;em&gt;Product&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Schemas In PowerBI.
&lt;/h2&gt;

&lt;p&gt;A data schema is a logical structure of your data model. Its a blue print that organizes facts and dimension tables together with their relations.&lt;/p&gt;

&lt;h2&gt;
  
  
  Types Of Schemas
&lt;/h2&gt;

&lt;p&gt;The following are the common types of schemas used in PowerBI:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Star Schema.
As the name suggests it has a shape of a star. 
It has a central fact with surrounding dimension tables.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Illustration of Star Schema:&lt;/em&gt;&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%2Feorvnd970tbnyzwe159o.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%2Feorvnd970tbnyzwe159o.png" alt=" " width="800" height="543"&gt;&lt;/a&gt;&lt;br&gt;
Above is a description of a star schema in PowerBI with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The Facts table(Numeric data) in the middle.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The dimension tables connected from the Fact table.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;2.Snowflake Schema.&lt;br&gt;
For the snowflake schema dimensions are split into multiple related tables.&lt;br&gt;
Meaning: In star schema the dimensions are kept in a single table. But in snowflake the dimesions are normalized i.e They are organized to reduce redundacy (repetition of data). The dimensions can relate to other dimensions including the fact table.&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh6cf78u5tuh9bwfpid2v.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%2Fh6cf78u5tuh9bwfpid2v.png" alt=" " width="800" height="429"&gt;&lt;/a&gt;&lt;br&gt;
In the above relationship you can be able see the further sub-division of dimensions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Relationships In PowerBI:
&lt;/h2&gt;

&lt;p&gt;Relationships are used to link facts and dimensions. They define how tables connect to each other therefore enhancing accurate reporting.&lt;br&gt;
In PowerBI there are several types of relationships they include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;One to One.
The rarest relationship.
One table relates to only one table.
For Example (1) dimension relates to (1) Fact:&lt;/li&gt;
&lt;/ol&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%2Foyjclx3jixrd8vq57miw.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%2Foyjclx3jixrd8vq57miw.png" alt=" " width="516" height="208"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;One to Many.&lt;br&gt;
One record relates to multiple records in other tables.&lt;br&gt;
For Example: We can have one customer with multiple transactions.&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%2Frgp9rpo6wd9egy4qrdw4.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%2Frgp9rpo6wd9egy4qrdw4.png" alt=" " width="800" height="433"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Many to Many&lt;br&gt;
Its a type of relationships where multiple records are related to other multiple records in other tables.&lt;br&gt;
For Example: One student can take many courses and one course can have multiple students.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Importance of a good modelling:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Performance-By minimizing the number of joints, a clean schema ensures optimized queries and less memory usage therefore ensuring a good responsive dashboard.&lt;/li&gt;
&lt;li&gt;Accuracy-An accurate model ensures the correctness of aggregates. This ensures that there is a consistency across the report.&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Maintability-A good model with a clean schema is easy to maintain by spoting errors and easy troubleshooting. Also its easy to explain to others.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scalability- Its easy to add new features, you can easily add more dimensions and supports large growth of data.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>productivity</category>
      <category>learning</category>
      <category>datascience</category>
    </item>
    <item>
      <title>INTRODUCTION TO MS EXCEL FOR DATA ANALYTICS</title>
      <dc:creator>Derick Kimanthi</dc:creator>
      <pubDate>Sun, 25 Jan 2026 19:17:12 +0000</pubDate>
      <link>https://dev.to/derick_kimanthi/introduction-to-ms-excel-for-data-analytics-5eh7</link>
      <guid>https://dev.to/derick_kimanthi/introduction-to-ms-excel-for-data-analytics-5eh7</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;If you are a starting out in data analytics, I am sure you have heard of excel. You see excel is a tool that helps you analyze data, create dashboards, perform data entries, automate tasks and so much more. In this guide i will explain how MS excel can be used for basic data analytics, in a simple and beginner-friendly language.&lt;/p&gt;

&lt;h2&gt;
  
  
  MS Excel Layout
&lt;/h2&gt;

&lt;p&gt;In this article, i will assume you have already downloaded and installed Microsoft excel. When you open excel the first page you will see is the start up screen. After which you will be redirected to a page where you will select a blank workbook or templates of your choice depending on the type of tasks you are performing. &lt;strong&gt;For a beginner&lt;/strong&gt; i recommend you starting with a blank book. This will enable you to practice entering data, applying formulas as well as exploring Microsoft Excel's features.&lt;br&gt;
Once you select the blank work book, excel takes you to a new worksheet:&lt;br&gt;
In the worksheet there is a:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Title Bar- Displays the name of your workbook and the application (Excel). &lt;/li&gt;
&lt;li&gt;&lt;p&gt;Quick Access Toolbar-Provides access to frequently used commands.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Formula Bar- It shows the contents of a selected cell. You can also type and enter formulas and data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ribbon-This is the main menu at the top ofthe work sheet, it's organized into tabs; whereby each contains a group of commands and tools.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cell-This is where you enter data. Each cell is identified by its column letter and row number (e.g., A1).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Row-A horizontal line of cells, numbered along the left side of the worksheet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Column-A vertical line of cells, labeled with letters across the top of the worksheet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scroll Bars-Allow you to move horizontally or vertically through your worksheet.&lt;br&gt;
Below is an Image that clearly illustrates the above:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fwp7c5400tx0cj51hfp6t.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%2Fwp7c5400tx0cj51hfp6t.png" alt="An Excel Worksheet" width="721" height="526"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Basic Formatting
&lt;/h2&gt;

&lt;p&gt;This basically involves improving the data readability. It's simply done by adjusting the font and size, alingment and adding other formatting styles like bold, italics etc. These tools are located at the home tab.&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%2F3f29krx98f3oghis6ikt.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%2F3f29krx98f3oghis6ikt.png" alt="Home Tab" width="800" height="55"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Important Formatting techniques:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Font Styles-Simply it consists of font types,sizes,color or making the text either bold, italic. You can also use the paint bucket to fill the entire text with a color of your choice.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Number Formatting-This involves choosing the correct data type that custom-fits a column and a cell e.g. you can choose currency, dates, text number etc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Alingment-Adjusting the alingments enhaces data readability, you can align data center, top, right, bottom , vertical alingment and text wrap.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Row &amp;amp; column sizing-You can adjust the height of rows, when your text or data doesnot fit you can raise the height of the row ensuring that data  or text fits nicely.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Freeze panes- The headers can be freezed allowing you to see the headers when scrolling in large data sets&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fsamrhocxxg1p94jgluft.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%2Fsamrhocxxg1p94jgluft.png" alt="freezing panes" width="800" height="113"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Working with a large data set
&lt;/h2&gt;

&lt;p&gt;When working with large data sets; you will need to apply some formatting and formulas that will make your work easier. &lt;br&gt;
For Example:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3iye8mpl6ts2aii11zc8.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%2F3iye8mpl6ts2aii11zc8.png" alt="Large data set" width="800" height="338"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;This is a tool that helps you control the type of data entered in a cell. It's essential as it helps maintain accuracy by restricting what is entered. For example you create a dropdown that limits a cell's selection to either Male or Female e.t.c. for gender selection.&lt;br&gt;
To do this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Select a column&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the data tab&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Then click data validation&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%2F80yp9s3lhpd20qo15eik.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%2F80yp9s3lhpd20qo15eik.png" alt="Data Manipulation" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You will see a popup menu&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the list in the dropdown Menu&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Type the source as seen and click ok&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%2Foqsvcabkz2kt6jilpqg1.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%2Foqsvcabkz2kt6jilpqg1.png" alt="Confirmation" width="386" height="329"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Data Sorting
&lt;/h2&gt;

&lt;p&gt;This involves arranging data in a specific order:&lt;br&gt;
It includes:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Alphabetical sortin- from A to Z.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Number sorting-smallest to largest and viceversa.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Date and time sorting-oldest to new and viceversa.&lt;br&gt;
To do this:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Select all the data by CTRL+A&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click sorting, then navigate to &lt;strong&gt;custom sorting&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Then select the column you want to sort.&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.amazonaws.com%2Fuploads%2Farticles%2Fb3js1gfj8wxkxzyiw8hv.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%2Fb3js1gfj8wxkxzyiw8hv.png" alt="Data Sorting" width="570" height="253"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Data Filtering
&lt;/h2&gt;

&lt;p&gt;its used to show data that meets the specific conditions while hiding the rest.&lt;br&gt;
E.g Show sales above 10,000&lt;br&gt;
How to do it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Select your data&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the data tab then filter&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A small dropdown arrow will appear on each column header&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Types of filtering include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Text Filters&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Number filters&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Date filters&lt;br&gt;
Illustration:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fta4thp2dbxi5egmznqxx.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%2Fta4thp2dbxi5egmznqxx.png" alt="Data Filtering" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Functions In Excel
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Text Functions&lt;/strong&gt;&lt;br&gt;
Majorly these functions manipulate texts, they join and transform texts from one form to another e.g uppercase, lowercase, propercase. They include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Upper case-converts text from lower case to uppercase syntax&lt;code&gt;=UPPER(Cell_reference)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Lower case-Converts text to lowercase Syntax: &lt;code&gt;=LOWER(cell_reference)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Trim Function-Removes extra spaces from text except single spaces between words Syntax: &lt;code&gt;=TRIM(text)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Length Function-Counts the number of characters in a text string
Syntax: &lt;code&gt;=LEN(text)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Left Function-Extracts a specified number of characters from the left side of a text Syntax: &lt;code&gt;=LEFT(text, num_chars)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Right Function-Extracts a specified number of characters from the right side of a text Syntax: &lt;code&gt;=RIGHT(text, num_chars)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Mid Function-Extracts text from the middle of a text string
Syntax: &lt;code&gt;=MID(text, start_num, num_chars)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Concate-Joins two or more text strings together
Syntax:&lt;code&gt;=CONCAT(text1, text2, …)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Proper case-Converts text to proper case (first letter of each word capitalized)
Syntax: &lt;code&gt;=PROPER(cell_reference)&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Aggregate Functions
&lt;/h2&gt;

&lt;p&gt;These functions are used to perform calculations on a group of values. They are performed on numerical values. They include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sum-Performs a summation for a range. Syntax:&lt;code&gt;=SUM(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Average-Calculates the mean of a range. Syntax:&lt;code&gt;=AVERAGE(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Count-Counts cells that contain numbers.Syntax:&lt;code&gt;=COUNT(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Counta-Counts cells that are not empty. Syntax:&lt;code&gt;=COUNTA(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Max-It returns the maximum value in a range. Syntax:&lt;code&gt;=MAX(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Min-It returns the minimum value in a range. Syntax:&lt;code&gt;=MIN(range)&lt;/code&gt;
ILLUSTRATION:
&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%2Fyb8ud8940oyymryeouuz.png" alt="SUM FUNCTION" width="503" height="466"&gt;
The highlighted part is the selected range, Once you press enter excel will calculate and display the result of the sum of the above range.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Conditional Aggregation
&lt;/h2&gt;

&lt;p&gt;These functions calculate totals, counts or averages based on one or more conditions.&lt;br&gt;
E.g Total sales based on region = Nairobi where count of sales&amp;lt;10&lt;br&gt;
&lt;strong&gt;They include:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;1.SUMIF-Adds values with one condition. Syntax:&lt;code&gt;=SUMIF(range,criteria,sum_range)&lt;/code&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;SUMIFS-Adds values with multiple conditions. Syntax:&lt;code&gt;=SUMIFS(sum_range, criteria_range1, criterion1, [criteria_range2, criterion2], ...).&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;COUNTIF-Counts the number of cells that satisfy a certain condition. Syntax:&lt;code&gt;=COUNTIF(Range,criteria)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;COUNTIFS-Counts the number of cells that satisfy multiple conditions. Syntax:&lt;code&gt;=COUNTIFS(criteria_range1, criterion1, [criteria_range2, criterion2], ...).&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;AVERAGEIF-Calculates the mean of values based on one condition. 
Syntax:&lt;code&gt;=AVERAGEIF(range, criteria, [average_range]),&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;AVERAGEIFS-Calculates the mean of values based on multiple conditions. Syntax:&lt;code&gt;=AVERAGEIFS(average_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;ILLUSTRATION:&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%2Fhnx8nfh5m8h13hba8s2l.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%2Fhnx8nfh5m8h13hba8s2l.png" alt="SUMIFS ILLUSTRATION" width="592" height="722"&gt;&lt;/a&gt;&lt;br&gt;
Once you press enter, Excel will calculate the Sum based on the condition highlighted in blue which is the sales departement.&lt;/p&gt;

&lt;h2&gt;
  
  
  Logical Functions
&lt;/h2&gt;

&lt;p&gt;Logical functions automate decision-making. What they do is: compare ideas, Test conditions, return true or false based on specific results.&lt;br&gt;
&lt;strong&gt;They Include&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;IF Functions-Perform Logical test and returns false based on the decision.&lt;br&gt;
syntax: &lt;code&gt;=IF(Logical_test, Value_if_true,value_if_false)&lt;/code&gt;&lt;br&gt;
E.g &lt;code&gt;=IF(E2&amp;gt;80000, "High","Low"&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Nested IF- Used when you have more than two conditions&lt;br&gt;
it's an if inside an if( therefore nested if)&lt;br&gt;
Syntax:&lt;code&gt;=IF(condition1, value_if_true1, IF(condition2, value_if_true2, value_if_false_all))&lt;/code&gt;&lt;br&gt;
E.g A scenario whereby you are required to categorise employees by age as follows: highly experienced (&amp;gt;30), moderately experienced(20-30), low experinced(10-20),very low experience(less than 10).&lt;br&gt;
&lt;strong&gt;Approach:&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Insert another column to your data by right-clicking on the header, then select insert. You can then name it &lt;strong&gt;&lt;em&gt;Experience level&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;At the formula bar you can use the following formula:&lt;br&gt;
&lt;code&gt;=IF(P&amp;gt;30, "Highly Experience",IF (P2&amp;gt;=20 "Moderately Experienced", IF (P2&amp;gt;=10 "Low Experienced", IF(P2&amp;lt;10 "Very Low Experience"))))&lt;/code&gt; once you press enter, excel will categorise the employees based on the following criteria.&lt;br&gt;
ILLUSTRATION:&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.amazonaws.com%2Fuploads%2Farticles%2Fnemeiw21vsbttqcphr6k.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%2Fnemeiw21vsbttqcphr6k.png" alt="Nested IF" width="382" height="804"&gt;&lt;/a&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%2Frh9elr9pmp1fxerbi751.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%2Frh9elr9pmp1fxerbi751.png" alt="Nested IF" width="800" height="232"&gt;&lt;/a&gt;&lt;br&gt;
After autofilling:&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%2F5v8ia7p7a8rsw6scspvh.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%2F5v8ia7p7a8rsw6scspvh.png" alt="Nested IF" width="336" height="808"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;AND FUNCTION-Returns true if all conditions are true.
Syntax:&lt;code&gt;=IF(AND(Conditional1,Conditional2)&lt;/code&gt;
Example:&lt;code&gt;=IF(AND(C2&amp;gt;50,D2&amp;gt;5),"Eligible",Not Eligible")&lt;/code&gt;
In this case all conditions have to be met.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;4.OR Function-Returns true if any condition is true&lt;br&gt;
E.g&lt;code&gt;=IF(OR(C2&amp;gt;50,D2&amp;gt;5),"Eligible",Not Eligible")&lt;/code&gt;&lt;br&gt;
In this case only one condition needs to be met.&lt;/p&gt;

&lt;h2&gt;
  
  
  VLOOKUP VS HLOOKUP
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;VLOOKUP&lt;/strong&gt;-it searches for a value in the first column of a range and returns a value from another column.&lt;br&gt;
It functions by searching for a value vertically (down a column).&lt;br&gt;
It looks in the first column of the table.&lt;br&gt;
Then returns the value from another column in the same row.&lt;/p&gt;

&lt;p&gt;Syntax:&lt;code&gt;=VLOOKUP(lookup_value, Table_Array, Col_Index_Num, [Range_LookUP]&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Where:&lt;/em&gt;&lt;/strong&gt; lookup_value = Value&lt;br&gt;
             Table_Array = Entire Table&lt;br&gt;
             Col_Index_Num = Column number&lt;br&gt;
             [Range_LookUP] = setup to False&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LOOKUP&lt;/strong&gt;-Stands for horizontal lookup. It searches for a value in the first row of a table and returns a value from the same column in a row you specify.&lt;/p&gt;

&lt;p&gt;Syntax:&lt;code&gt;=HLOOKUP(lookup_value, Table_Array, Col_Index_Num, [Range_LookUP]&lt;/code&gt;&lt;br&gt;
SCENARIO:&lt;br&gt;
How much is the bonus for employee 108759 &lt;code&gt;=HLOOKUP(108759,A1:A1867,13,False)&lt;/code&gt;&lt;br&gt;
What is the marital status for employee 10622&lt;code&gt;=HLOOKUP(10622,A1:A1867,14,False)&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;NB&lt;/strong&gt; To use both of these tools, you need to have an idea of  what you are searching for. This enables you to find other related information easily.&lt;/p&gt;

&lt;h2&gt;
  
  
  INDEX AND MATCH
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;INDEX&lt;/strong&gt;-Refers to organizing data so that excel can quickly locate and retrieve specific values.&lt;br&gt;
Syntax:&lt;code&gt;=INDEX(Array,row_num,[Col_num]&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;INDEX WITH MATCH-This Combination replaces VLOOKUP &amp;amp; HLOOKUP, by enabling you to search anywhere.&lt;br&gt;
Syntax:`=INDEX(Return_range,&lt;/strong&gt;match*&lt;em&gt;(Lookup_value,Lookup_range,0))&lt;code&gt;&lt;br&gt;
You simply index what you are trying to find:&lt;br&gt;
E.g.&lt;/code&gt;=INDEX(F2:F877,&lt;/em&gt;*match(10871,A2:A877,0))`&lt;br&gt;
ILLUSTRATION:Find the department for employee 10871&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%2Fwag11cb13znir8e6mwgp.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%2Fwag11cb13znir8e6mwgp.png" alt="Index and match" width="586" height="479"&gt;&lt;/a&gt;&lt;br&gt;
The result will be:&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%2Fpsw88k47orsich90nsbt.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%2Fpsw88k47orsich90nsbt.png" alt="Results" width="102" height="443"&gt;&lt;/a&gt;&lt;br&gt;
As you can see the result is marketing department.&lt;/p&gt;

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

&lt;p&gt;In the above guide, we have only focused on the basic functionalities of Excel. As a beginner understanding the full potential of Excel is essential towards the growth of your data analytics career. Therefore by starting small through practicing, you will be able to master these and more concepts easily.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>webdev</category>
      <category>productivity</category>
      <category>datascience</category>
    </item>
    <item>
      <title>INTRODUCTION TO MS EXCEL FOR DATA ANALYTICS</title>
      <dc:creator>Derick Kimanthi</dc:creator>
      <pubDate>Sun, 25 Jan 2026 16:17:10 +0000</pubDate>
      <link>https://dev.to/derick_kimanthi/introduction-to-ms-excel-for-data-analytics-476o</link>
      <guid>https://dev.to/derick_kimanthi/introduction-to-ms-excel-for-data-analytics-476o</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;If you are a starting out in data analytics, I am sure you have heard of excel. You see excel is a tool that helps you analyze data, create dashboards, perform data entries, automate tasks and so much more. In this guide i will explain how MS excel can be used for basic data analytics, in a simple and beginner-friendly language.&lt;/p&gt;

&lt;h2&gt;
  
  
  MS Excel Layout
&lt;/h2&gt;

&lt;p&gt;In this article, i will assume you have already downloaded and installed Microsoft excel. When you open excel the first page you will see is the start up screen. After which you will be redirected to a page where you will select a blank workbook or templates of your choice depending on the type of tasks you are performing. &lt;strong&gt;For a beginner&lt;/strong&gt; i recommend you starting with a blank book. This will enable you to practice entering data, applying formulas as well as exploring Microsoft Excel's features.&lt;br&gt;
Once you select the blank work book, excel takes you to a new worksheet:&lt;br&gt;
In the worksheet there is a:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Title Bar- Displays the name of your workbook and the application (Excel). &lt;/li&gt;
&lt;li&gt;&lt;p&gt;Quick Access Toolbar-Provides access to frequently used commands.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Formula Bar- It shows the contents of a selected cell. You can also type and enter formulas and data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ribbon-This is the main menu at the top ofthe work sheet, it's organized into tabs; whereby each contains a group of commands and tools.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cell-This is where you enter data. Each cell is identified by its column letter and row number (e.g., A1).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Row-A horizontal line of cells, numbered along the left side of the worksheet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Column-A vertical line of cells, labeled with letters across the top of the worksheet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scroll Bars-Allow you to move horizontally or vertically through your worksheet.&lt;br&gt;
Below is an Image that clearly illustrates the above:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fwp7c5400tx0cj51hfp6t.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%2Fwp7c5400tx0cj51hfp6t.png" alt="An Excel Worksheet" width="721" height="526"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Basic Formatting
&lt;/h2&gt;

&lt;p&gt;This basically involves improving the data readability. It's simply done by adjusting the font and size, alingment and adding other formatting styles like bold, italics etc. These tools are located at the home tab.&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%2F3f29krx98f3oghis6ikt.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%2F3f29krx98f3oghis6ikt.png" alt="Home Tab" width="800" height="55"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Important Formatting techniques:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Font Styles-Simply it consists of font types,sizes,color or making the text either bold, italic. You can also use the paint bucket to fill the entire text with a color of your choice.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Number Formatting-This involves choosing the correct data type that custom-fits a column and a cell e.g. you can choose currency, dates, text number etc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Alingment-Adjusting the alingments enhaces data readability, you can align data center, top, right, bottom , vertical alingment and text wrap.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Row &amp;amp; column sizing-You can adjust the height of rows, when your text or data doesnot fit you can raise the height of the row ensuring that data  or text fits nicely.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Freeze panes- The headers can be freezed allowing you to see the headers when scrolling in large data sets&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fsamrhocxxg1p94jgluft.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%2Fsamrhocxxg1p94jgluft.png" alt="freezing panes" width="800" height="113"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Working with a large data set
&lt;/h2&gt;

&lt;p&gt;When working with large data sets; you will need to apply some formatting and formulas that will make your work easier. &lt;br&gt;
For Example:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3iye8mpl6ts2aii11zc8.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%2F3iye8mpl6ts2aii11zc8.png" alt="Large data set" width="800" height="338"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;This is a tool that helps you control the type of data entered in a cell. It's essential as it helps maintain accuracy by restricting what is entered. For example you create a dropdown that limits a cell's selection to either Male or Female e.t.c. for gender selection.&lt;br&gt;
To do this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Select a column&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the data tab&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Then click data validation&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%2F80yp9s3lhpd20qo15eik.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%2F80yp9s3lhpd20qo15eik.png" alt="Data Manipulation" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You will see a popup menu&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the list in the dropdown Menu&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Type the source as seen and click ok&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%2Foqsvcabkz2kt6jilpqg1.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%2Foqsvcabkz2kt6jilpqg1.png" alt="Confirmation" width="386" height="329"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Data Sorting
&lt;/h2&gt;

&lt;p&gt;This involves arranging data in a specific order:&lt;br&gt;
It includes:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Alphabetical sortin- from A to Z.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Number sorting-smallest to largest and viceversa.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Date and time sorting-oldest to new and viceversa.&lt;br&gt;
To do this:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Select all the data by CTRL+A&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click sorting, then navigate to &lt;strong&gt;custom sorting&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Then select the column you want to sort.&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.amazonaws.com%2Fuploads%2Farticles%2Fb3js1gfj8wxkxzyiw8hv.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%2Fb3js1gfj8wxkxzyiw8hv.png" alt="Data Sorting" width="570" height="253"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Data Filtering
&lt;/h2&gt;

&lt;p&gt;its used to show data that meets the specific conditions while hiding the rest.&lt;br&gt;
E.g Show sales above 10,000&lt;br&gt;
How to do it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Select your data&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the data tab then filter&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A small dropdown arrow will appear on each column header&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Types of filtering include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Text Filters&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Number filters&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Date filters&lt;br&gt;
Illustration:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fta4thp2dbxi5egmznqxx.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%2Fta4thp2dbxi5egmznqxx.png" alt="Data Filtering" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Functions In Excel
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Text Functions&lt;/strong&gt;&lt;br&gt;
Majorly these functions manipulate texts, they join and transform texts from one form to another e.g uppercase, lowercase, propercase. They include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Upper case-converts text from lower case to uppercase syntax&lt;code&gt;=UPPER(Cell_reference)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Lower case-Converts text to lowercase Syntax: &lt;code&gt;=LOWER(cell_reference)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Trim Function-Removes extra spaces from text except single spaces between words Syntax: &lt;code&gt;=TRIM(text)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Length Function-Counts the number of characters in a text string
Syntax: &lt;code&gt;=LEN(text)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Left Function-Extracts a specified number of characters from the left side of a text Syntax: &lt;code&gt;=LEFT(text, num_chars)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Right Function-Extracts a specified number of characters from the right side of a text Syntax: &lt;code&gt;=RIGHT(text, num_chars)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Mid Function-Extracts text from the middle of a text string
Syntax: &lt;code&gt;=MID(text, start_num, num_chars)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Concate-Joins two or more text strings together
Syntax:&lt;code&gt;=CONCAT(text1, text2, …)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Proper case-Converts text to proper case (first letter of each word capitalized)
Syntax: &lt;code&gt;=PROPER(cell_reference)&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Aggregate Functions
&lt;/h2&gt;

&lt;p&gt;These functions are used to perform calculations on a group of values. They are performed on numerical values. They include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sum-Performs a summation for a range. Syntax:&lt;code&gt;=SUM(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Average-Calculates the mean of a range. Syntax:&lt;code&gt;=AVERAGE(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Count-Counts cells that contain numbers.Syntax:&lt;code&gt;=COUNT(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Counta-Counts cells that are not empty. Syntax:&lt;code&gt;=COUNTA(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Max-It returns the maximum value in a range. Syntax:&lt;code&gt;=MAX(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Min-It returns the minimum value in a range. Syntax:&lt;code&gt;=MIN(range)&lt;/code&gt;
ILLUSTRATION:
&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%2Fyb8ud8940oyymryeouuz.png" alt="SUM FUNCTION" width="503" height="466"&gt;
The highlighted part is the selected range, Once you press enter excel will calculate and display the result of the sum of the above range.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Conditional Aggregation
&lt;/h2&gt;

&lt;p&gt;These functions calculate totals, counts or averages based on one or more conditions.&lt;br&gt;
E.g Total sales based on region = Nairobi where count of sales&amp;lt;10&lt;br&gt;
&lt;strong&gt;They include:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;1.SUMIF-Adds values with one condition. Syntax:&lt;code&gt;=SUMIF(range,criteria,sum_range)&lt;/code&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;SUMIFS-Adds values with multiple conditions. Syntax:&lt;code&gt;=SUMIFS(sum_range, criteria_range1, criterion1, [criteria_range2, criterion2], ...).&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;COUNTIF-Counts the number of cells that satisfy a certain condition. Syntax:&lt;code&gt;=COUNTIF(Range,criteria)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;COUNTIFS-Counts the number of cells that satisfy multiple conditions. Syntax:&lt;code&gt;=COUNTIFS(criteria_range1, criterion1, [criteria_range2, criterion2], ...).&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;AVERAGEIF-Calculates the mean of values based on one condition. 
Syntax:&lt;code&gt;=AVERAGEIF(range, criteria, [average_range]),&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;AVERAGEIFS-Calculates the mean of values based on multiple conditions. Syntax:&lt;code&gt;=AVERAGEIFS(average_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;ILLUSTRATION:&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%2Fhnx8nfh5m8h13hba8s2l.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%2Fhnx8nfh5m8h13hba8s2l.png" alt="SUMIFS ILLUSTRATION" width="592" height="722"&gt;&lt;/a&gt;&lt;br&gt;
Once you press enter, Excel will calculate the Sum based on the condition highlighted in blue which is the sales departement.&lt;/p&gt;

&lt;h2&gt;
  
  
  Logical Functions
&lt;/h2&gt;

&lt;p&gt;Logical functions automate decision-making. What they do is: compare ideas, Test conditions, return true or false based on specific results.&lt;br&gt;
&lt;strong&gt;They Include&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;IF Functions-Perform Logical test and returns false based on the decision.&lt;br&gt;
syntax: &lt;code&gt;=IF(Logical_test, Value_if_true,value_if_false)&lt;/code&gt;&lt;br&gt;
E.g &lt;code&gt;=IF(E2&amp;gt;80000, "High","Low"&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Nested IF- Used when you have more than two conditions&lt;br&gt;
it's an if inside an if( therefore nested if)&lt;br&gt;
Syntax:&lt;code&gt;=IF(condition1, value_if_true1, IF(condition2, value_if_true2, value_if_false_all))&lt;/code&gt;&lt;br&gt;
E.g A scenario whereby you are required to categorise employees by age as follows: highly experienced (&amp;gt;30), moderately experienced(20-30), low experinced(10-20),very low experience(less than 10).&lt;br&gt;
&lt;strong&gt;Approach:&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Insert another column to your data by right-clicking on the header, then select insert. You can then name it &lt;strong&gt;&lt;em&gt;Experience level&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;At the formula bar you can use the following formula:&lt;br&gt;
&lt;code&gt;=IF(P&amp;gt;30, "Highly Experience",IF (P2&amp;gt;=20 "Moderately Experienced", IF (P2&amp;gt;=10 "Low Experienced", IF(P2&amp;lt;10 "Very Low Experience"))))&lt;/code&gt; once you press enter, excel will categorise the employees based on the following criteria.&lt;br&gt;
ILLUSTRATION:&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.amazonaws.com%2Fuploads%2Farticles%2Fnemeiw21vsbttqcphr6k.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%2Fnemeiw21vsbttqcphr6k.png" alt="Nested IF" width="382" height="804"&gt;&lt;/a&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%2Frh9elr9pmp1fxerbi751.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%2Frh9elr9pmp1fxerbi751.png" alt="Nested IF" width="800" height="232"&gt;&lt;/a&gt;&lt;br&gt;
After autofilling:&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%2F5v8ia7p7a8rsw6scspvh.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%2F5v8ia7p7a8rsw6scspvh.png" alt="Nested IF" width="336" height="808"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;AND FUNCTION-Returns true if all conditions are true.
Syntax:&lt;code&gt;=IF(AND(Conditional1,Conditional2)&lt;/code&gt;
Example:&lt;code&gt;=IF(AND(C2&amp;gt;50,D2&amp;gt;5),"Eligible",Not Eligible")&lt;/code&gt;
In this case all conditions have to be met.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;4.OR Function-Returns true if any condition is true&lt;br&gt;
E.g&lt;code&gt;=IF(OR(C2&amp;gt;50,D2&amp;gt;5),"Eligible",Not Eligible")&lt;/code&gt;&lt;br&gt;
In this case only one condition needs to be met.&lt;/p&gt;

&lt;h2&gt;
  
  
  VLOOKUP VS HLOOKUP
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;VLOOKUP&lt;/strong&gt;-it searches for a value in the first column of a range and returns a value from another column.&lt;br&gt;
It functions by searching for a value vertically (down a column).&lt;br&gt;
It looks in the first column of the table.&lt;br&gt;
Then returns the value from another column in the same row.&lt;/p&gt;

&lt;p&gt;Syntax:&lt;code&gt;=VLOOKUP(lookup_value, Table_Array, Col_Index_Num, [Range_LookUP]&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Where:&lt;/em&gt;&lt;/strong&gt; lookup_value = Value&lt;br&gt;
             Table_Array = Entire Table&lt;br&gt;
             Col_Index_Num = Column number&lt;br&gt;
             [Range_LookUP] = setup to False&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LOOKUP&lt;/strong&gt;-Stands for horizontal lookup. It searches for a value in the first row of a table and returns a value from the same column in a row you specify.&lt;/p&gt;

&lt;p&gt;Syntax:&lt;code&gt;=HLOOKUP(lookup_value, Table_Array, Col_Index_Num, [Range_LookUP]&lt;/code&gt;&lt;br&gt;
SCENARIO:&lt;br&gt;
How much is the bonus for employee 108759 &lt;code&gt;=HLOOKUP(108759,A1:A1867,13,False)&lt;/code&gt;&lt;br&gt;
What is the marital status for employee 10622&lt;code&gt;=HLOOKUP(10622,A1:A1867,14,False)&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;NB&lt;/strong&gt; To use both of these tools, you need to have an idea of  what you are searching for. This enables you to find other related information easily.&lt;/p&gt;

&lt;h2&gt;
  
  
  INDEX AND MATCH
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;INDEX&lt;/strong&gt;-Refers to organizing data so that excel can quickly locate and retrieve specific values.&lt;br&gt;
Syntax:&lt;code&gt;=INDEX(Array,row_num,[Col_num]&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;INDEX WITH MATCH-&lt;/strong&gt;&lt;br&gt;
This Combination replaces VLOOKUP &amp;amp; HLOOKUP, by enabling you to search anywhere.&lt;br&gt;
Syntax:&lt;code&gt;=INDEX(Return_range,**match**(Lookup_value,Lookup_range,0))&lt;/code&gt;&lt;br&gt;
You simply index what you are trying to find:&lt;br&gt;
E.g.&lt;code&gt;=INDEX(F2:F877,**match(10871,A2:A877,0))&lt;/code&gt;&lt;br&gt;
ILLUSTRATION:Find the department for employee 10871&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%2Fwag11cb13znir8e6mwgp.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%2Fwag11cb13znir8e6mwgp.png" alt="Index and match" width="586" height="479"&gt;&lt;/a&gt;&lt;br&gt;
The result will be:&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%2Fpsw88k47orsich90nsbt.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%2Fpsw88k47orsich90nsbt.png" alt="Results" width="102" height="443"&gt;&lt;/a&gt;&lt;br&gt;
As you can see the result is marketing department.&lt;/p&gt;

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

&lt;p&gt;In the above guide, we have only focused on the basic functionalities of Excel. As a beginner understanding the full potential of Excel is essential towards the growth of your data analytics career. Therefore by starting small through practicing, you will be able to master these and more concepts easily.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>productivity</category>
      <category>datascience</category>
      <category>beginners</category>
    </item>
    <item>
      <title>INTRODUCTION TO MS EXCEL FOR DATA ANALYTICS</title>
      <dc:creator>Derick Kimanthi</dc:creator>
      <pubDate>Sun, 25 Jan 2026 16:17:10 +0000</pubDate>
      <link>https://dev.to/derick_kimanthi/introduction-to-ms-excel-for-data-analytics-lae</link>
      <guid>https://dev.to/derick_kimanthi/introduction-to-ms-excel-for-data-analytics-lae</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;If you are a starting out in data analytics, I am sure you have heard of excel. You see excel is a tool that helps you analyze data, create dashboards, perform data entries, automate tasks and so much more. In this guide i will explain how MS excel can be used for basic data analytics, in a simple and beginner-friendly language.&lt;/p&gt;

&lt;h2&gt;
  
  
  MS Excel Layout
&lt;/h2&gt;

&lt;p&gt;In this article, i will assume you have already downloaded and installed Microsoft excel. When you open excel the first page you will see is the start up screen. After which you will be redirected to a page where you will select a blank workbook or templates of your choice depending on the type of tasks you are performing. &lt;strong&gt;For a beginner&lt;/strong&gt; i recommend you starting with a blank book. This will enable you to practice entering data, applying formulas as well as exploring Microsoft Excel's features.&lt;br&gt;
Once you select the blank work book, excel takes you to a new worksheet:&lt;br&gt;
In the worksheet there is a:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Title Bar- Displays the name of your workbook and the application (Excel). &lt;/li&gt;
&lt;li&gt;&lt;p&gt;Quick Access Toolbar-Provides access to frequently used commands.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Formula Bar- It shows the contents of a selected cell. You can also type and enter formulas and data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ribbon-This is the main menu at the top ofthe work sheet, it's organized into tabs; whereby each contains a group of commands and tools.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cell-This is where you enter data. Each cell is identified by its column letter and row number (e.g., A1).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Row-A horizontal line of cells, numbered along the left side of the worksheet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Column-A vertical line of cells, labeled with letters across the top of the worksheet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scroll Bars-Allow you to move horizontally or vertically through your worksheet.&lt;br&gt;
Below is an Image that clearly illustrates the above:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fwp7c5400tx0cj51hfp6t.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%2Fwp7c5400tx0cj51hfp6t.png" alt="An Excel Worksheet" width="721" height="526"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Basic Formatting
&lt;/h2&gt;

&lt;p&gt;This basically involves improving the data readability. It's simply done by adjusting the font and size, alingment and adding other formatting styles like bold, italics etc. These tools are located at the home tab.&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%2F3f29krx98f3oghis6ikt.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%2F3f29krx98f3oghis6ikt.png" alt="Home Tab" width="800" height="55"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Important Formatting techniques:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Font Styles-Simply it consists of font types,sizes,color or making the text either bold, italic. You can also use the paint bucket to fill the entire text with a color of your choice.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Number Formatting-This involves choosing the correct data type that custom-fits a column and a cell e.g. you can choose currency, dates, text number etc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Alingment-Adjusting the alingments enhaces data readability, you can align data center, top, right, bottom , vertical alingment and text wrap.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Row &amp;amp; column sizing-You can adjust the height of rows, when your text or data doesnot fit you can raise the height of the row ensuring that data  or text fits nicely.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Freeze panes- The headers can be freezed allowing you to see the headers when scrolling in large data sets&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fsamrhocxxg1p94jgluft.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%2Fsamrhocxxg1p94jgluft.png" alt="freezing panes" width="800" height="113"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Working with a large data set
&lt;/h2&gt;

&lt;p&gt;When working with large data sets; you will need to apply some formatting and formulas that will make your work easier. &lt;br&gt;
For Example:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3iye8mpl6ts2aii11zc8.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%2F3iye8mpl6ts2aii11zc8.png" alt="Large data set" width="800" height="338"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;This is a tool that helps you control the type of data entered in a cell. It's essential as it helps maintain accuracy by restricting what is entered. For example you create a dropdown that limits a cell's selection to either Male or Female e.t.c. for gender selection.&lt;br&gt;
To do this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Select a column&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the data tab&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Then click data validation&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%2F80yp9s3lhpd20qo15eik.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%2F80yp9s3lhpd20qo15eik.png" alt="Data Manipulation" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You will see a popup menu&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the list in the dropdown Menu&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Type the source as seen and click ok&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%2Foqsvcabkz2kt6jilpqg1.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%2Foqsvcabkz2kt6jilpqg1.png" alt="Confirmation" width="386" height="329"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Data Sorting
&lt;/h2&gt;

&lt;p&gt;This involves arranging data in a specific order:&lt;br&gt;
It includes:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Alphabetical sortin- from A to Z.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Number sorting-smallest to largest and viceversa.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Date and time sorting-oldest to new and viceversa.&lt;br&gt;
To do this:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Select all the data by CTRL+A&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click sorting, then navigate to &lt;strong&gt;custom sorting&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Then select the column you want to sort.&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.amazonaws.com%2Fuploads%2Farticles%2Fb3js1gfj8wxkxzyiw8hv.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%2Fb3js1gfj8wxkxzyiw8hv.png" alt="Data Sorting" width="570" height="253"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Data Filtering
&lt;/h2&gt;

&lt;p&gt;its used to show data that meets the specific conditions while hiding the rest.&lt;br&gt;
E.g Show sales above 10,000&lt;br&gt;
How to do it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Select your data&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the data tab then filter&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A small dropdown arrow will appear on each column header&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Types of filtering include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Text Filters&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Number filters&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Date filters&lt;br&gt;
Illustration:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fta4thp2dbxi5egmznqxx.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%2Fta4thp2dbxi5egmznqxx.png" alt="Data Filtering" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Functions In Excel
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Text Functions&lt;/strong&gt;&lt;br&gt;
Majorly these functions manipulate texts, they join and transform texts from one form to another e.g uppercase, lowercase, propercase. They include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Upper case-converts text from lower case to uppercase syntax&lt;code&gt;=UPPER(Cell_reference)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Lower case-Converts text to lowercase Syntax: &lt;code&gt;=LOWER(cell_reference)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Trim Function-Removes extra spaces from text except single spaces between words Syntax: &lt;code&gt;=TRIM(text)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Length Function-Counts the number of characters in a text string
Syntax: &lt;code&gt;=LEN(text)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Left Function-Extracts a specified number of characters from the left side of a text Syntax: &lt;code&gt;=LEFT(text, num_chars)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Right Function-Extracts a specified number of characters from the right side of a text Syntax: &lt;code&gt;=RIGHT(text, num_chars)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Mid Function-Extracts text from the middle of a text string
Syntax: &lt;code&gt;=MID(text, start_num, num_chars)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Concate-Joins two or more text strings together
Syntax:&lt;code&gt;=CONCAT(text1, text2, …)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Proper case-Converts text to proper case (first letter of each word capitalized)
Syntax: &lt;code&gt;=PROPER(cell_reference)&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Aggregate Functions
&lt;/h2&gt;

&lt;p&gt;These functions are used to perform calculations on a group of values. They are performed on numerical values. They include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sum-Performs a summation for a range. Syntax:&lt;code&gt;=SUM(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Average-Calculates the mean of a range. Syntax:&lt;code&gt;=AVERAGE(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Count-Counts cells that contain numbers.Syntax:&lt;code&gt;=COUNT(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Counta-Counts cells that are not empty. Syntax:&lt;code&gt;=COUNTA(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Max-It returns the maximum value in a range. Syntax:&lt;code&gt;=MAX(range)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Min-It returns the minimum value in a range. Syntax:&lt;code&gt;=MIN(range)&lt;/code&gt;
ILLUSTRATION:
&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%2Fyb8ud8940oyymryeouuz.png" alt="SUM FUNCTION" width="503" height="466"&gt;
The highlighted part is the selected range, Once you press enter excel will calculate and display the result of the sum of the above range.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Conditional Aggregation
&lt;/h2&gt;

&lt;p&gt;These functions calculate totals, counts or averages based on one or more conditions.&lt;br&gt;
E.g Total sales based on region = Nairobi where count of sales&amp;lt;10&lt;br&gt;
&lt;strong&gt;They include:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;1.SUMIF-Adds values with one condition. Syntax:&lt;code&gt;=SUMIF(range,criteria,sum_range)&lt;/code&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;SUMIFS-Adds values with multiple conditions. Syntax:&lt;code&gt;=SUMIFS(sum_range, criteria_range1, criterion1, [criteria_range2, criterion2], ...).&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;COUNTIF-Counts the number of cells that satisfy a certain condition. Syntax:&lt;code&gt;=COUNTIF(Range,criteria)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;COUNTIFS-Counts the number of cells that satisfy multiple conditions. Syntax:&lt;code&gt;=COUNTIFS(criteria_range1, criterion1, [criteria_range2, criterion2], ...).&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;AVERAGEIF-Calculates the mean of values based on one condition. 
Syntax:&lt;code&gt;=AVERAGEIF(range, criteria, [average_range]),&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;AVERAGEIFS-Calculates the mean of values based on multiple conditions. Syntax:&lt;code&gt;=AVERAGEIFS(average_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;ILLUSTRATION:&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%2Fhnx8nfh5m8h13hba8s2l.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%2Fhnx8nfh5m8h13hba8s2l.png" alt="SUMIFS ILLUSTRATION" width="592" height="722"&gt;&lt;/a&gt;&lt;br&gt;
Once you press enter, Excel will calculate the Sum based on the condition highlighted in blue which is the sales departement.&lt;/p&gt;

&lt;h2&gt;
  
  
  Logical Functions
&lt;/h2&gt;

&lt;p&gt;Logical functions automate decision-making. What they do is: compare ideas, Test conditions, return true or false based on specific results.&lt;br&gt;
&lt;strong&gt;They Include&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;IF Functions-Perform Logical test and returns false based on the decision.&lt;br&gt;
syntax: &lt;code&gt;=IF(Logical_test, Value_if_true,value_if_false)&lt;/code&gt;&lt;br&gt;
E.g &lt;code&gt;=IF(E2&amp;gt;80000, "High","Low"&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Nested IF- Used when you have more than two conditions&lt;br&gt;
it's an if inside an if( therefore nested if)&lt;br&gt;
Syntax:&lt;code&gt;=IF(condition1, value_if_true1, IF(condition2, value_if_true2, value_if_false_all))&lt;/code&gt;&lt;br&gt;
E.g A scenario whereby you are required to categorise employees by age as follows: highly experienced (&amp;gt;30), moderately experienced(20-30), low experinced(10-20),very low experience(less than 10).&lt;br&gt;
&lt;strong&gt;Approach:&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Insert another column to your data by right-clicking on the header, then select insert. You can then name it &lt;strong&gt;&lt;em&gt;Experience level&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;At the formula bar you can use the following formula:&lt;br&gt;
&lt;code&gt;=IF(P&amp;gt;30, "Highly Experience",IF (P2&amp;gt;=20 "Moderately Experienced", IF (P2&amp;gt;=10 "Low Experienced", IF(P2&amp;lt;10 "Very Low Experience"))))&lt;/code&gt; once you press enter, excel will categorise the employees based on the following criteria.&lt;br&gt;
ILLUSTRATION:&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.amazonaws.com%2Fuploads%2Farticles%2Fnemeiw21vsbttqcphr6k.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%2Fnemeiw21vsbttqcphr6k.png" alt="Nested IF" width="382" height="804"&gt;&lt;/a&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%2Frh9elr9pmp1fxerbi751.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%2Frh9elr9pmp1fxerbi751.png" alt="Nested IF" width="800" height="232"&gt;&lt;/a&gt;&lt;br&gt;
After autofilling:&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%2F5v8ia7p7a8rsw6scspvh.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%2F5v8ia7p7a8rsw6scspvh.png" alt="Nested IF" width="336" height="808"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;AND FUNCTION-Returns true if all conditions are true.
Syntax:&lt;code&gt;=IF(AND(Conditional1,Conditional2)&lt;/code&gt;
Example:&lt;code&gt;=IF(AND(C2&amp;gt;50,D2&amp;gt;5),"Eligible",Not Eligible")&lt;/code&gt;
In this case all conditions have to be met.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;4.OR Function-Returns true if any condition is true&lt;br&gt;
E.g&lt;code&gt;=IF(OR(C2&amp;gt;50,D2&amp;gt;5),"Eligible",Not Eligible")&lt;/code&gt;&lt;br&gt;
In this case only one condition needs to be met.&lt;/p&gt;

&lt;h2&gt;
  
  
  VLOOKUP VS HLOOKUP
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;VLOOKUP&lt;/strong&gt;-it searches for a value in the first column of a range and returns a value from another column.&lt;br&gt;
It functions by searching for a value vertically (down a column).&lt;br&gt;
It looks in the first column of the table.&lt;br&gt;
Then returns the value from another column in the same row.&lt;/p&gt;

&lt;p&gt;Syntax:&lt;code&gt;=VLOOKUP(lookup_value, Table_Array, Col_Index_Num, [Range_LookUP]&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Where:&lt;/em&gt;&lt;/strong&gt; lookup_value = Value&lt;br&gt;
             Table_Array = Entire Table&lt;br&gt;
             Col_Index_Num = Column number&lt;br&gt;
             [Range_LookUP] = setup to False&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LOOKUP&lt;/strong&gt;-Stands for horizontal lookup. It searches for a value in the first row of a table and returns a value from the same column in a row you specify.&lt;/p&gt;

&lt;p&gt;Syntax:&lt;code&gt;=HLOOKUP(lookup_value, Table_Array, Col_Index_Num, [Range_LookUP]&lt;/code&gt;&lt;br&gt;
SCENARIO:&lt;br&gt;
How much is the bonus for employee 108759 &lt;code&gt;=HLOOKUP(108759,A1:A1867,13,False)&lt;/code&gt;&lt;br&gt;
What is the marital status for employee 10622&lt;code&gt;=HLOOKUP(10622,A1:A1867,14,False)&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;NB&lt;/strong&gt; To use both of these tools, you need to have an idea of  what you are searching for. This enables you to find other related information easily.&lt;/p&gt;

&lt;h2&gt;
  
  
  INDEX AND MATCH
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;INDEX&lt;/strong&gt;-Refers to organizing data so that excel can quickly locate and retrieve specific values.&lt;br&gt;
Syntax:&lt;code&gt;=INDEX(Array,row_num,[Col_num]&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;INDEX WITH MATCH-&lt;/strong&gt;&lt;br&gt;
This Combination replaces VLOOKUP &amp;amp; HLOOKUP, by enabling you to search anywhere.&lt;br&gt;
Syntax:&lt;code&gt;=INDEX(Return_range,**match**(Lookup_value,Lookup_range,0))&lt;/code&gt;&lt;br&gt;
You simply index what you are trying to find:&lt;br&gt;
E.g.&lt;code&gt;=INDEX(F2:F877,**match(10871,A2:A877,0))&lt;/code&gt;&lt;br&gt;
ILLUSTRATION:Find the department for employee 10871&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%2Fwag11cb13znir8e6mwgp.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%2Fwag11cb13znir8e6mwgp.png" alt="Index and match" width="586" height="479"&gt;&lt;/a&gt;&lt;br&gt;
The result will be:&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%2Fpsw88k47orsich90nsbt.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%2Fpsw88k47orsich90nsbt.png" alt="Results" width="102" height="443"&gt;&lt;/a&gt;&lt;br&gt;
As you can see the result is marketing department.&lt;/p&gt;

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

&lt;p&gt;In the above guide, we have only focused on the basic functionalities of Excel. As a beginner understanding the full potential of Excel is essential towards the growth of your data analytics career. Therefore by starting small through practicing, you will be able to master these and more concepts easily.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>productivity</category>
      <category>datascience</category>
      <category>beginners</category>
    </item>
    <item>
      <title>IMPLEMENTING GIT BASH, BEGINNER-FRIENDLY GUIDE</title>
      <dc:creator>Derick Kimanthi</dc:creator>
      <pubDate>Sat, 17 Jan 2026 19:31:21 +0000</pubDate>
      <link>https://dev.to/derick_kimanthi/implementing-git-bash-beginner-friendly-guide-5bjo</link>
      <guid>https://dev.to/derick_kimanthi/implementing-git-bash-beginner-friendly-guide-5bjo</guid>
      <description>&lt;h1&gt;
  
  
  INTRODUCTION
&lt;/h1&gt;

&lt;p&gt;In this guide, I will explain the basic uses of git bash. In a simple, beginner-friendly manner.&lt;/p&gt;

&lt;h2&gt;
  
  
  Git bash installation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Open your browser, e.g chrome, microsoft edge e.t.c&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Search for Git Bash download on the browser to download the setup file.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Run the &lt;code&gt;.exe&lt;/code&gt; file to install.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make sure you check the launch gitbash icon before installing.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Connecting Git Bash with GitHub
&lt;/h2&gt;

&lt;p&gt;To connect git bash to git hub, we use a set of command lines. I will explain the steps in a beginner-friendly manner for easy understanding.&lt;br&gt;
After installation, open Git Bash&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;To check the installation and version, we use the following command:
&lt;code&gt;git --version&lt;/code&gt; and then press enter.
You should be able to see the version number.
## Configuring Git &lt;/li&gt;
&lt;li&gt;&lt;p&gt;We need to update your name and email. This connects git bash to your GitHub Profile. &lt;br&gt;
You will run the following commands &lt;strong&gt;separately&lt;/strong&gt; &lt;br&gt;
First, it's the name; &lt;code&gt;git config --global user.name "YOUR NAME"&lt;/code&gt; and press enter. Second, run the second command for configuring the email: &lt;code&gt;git config --global user.email "Your Email@gmail.com"&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Confirmation of the configured details;&lt;br&gt;
Run the following command; &lt;code&gt;git config --list&lt;/code&gt; &lt;br&gt;
You should be able to see your user name and email as seen below:&lt;br&gt;&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%2Fd6itp3prycky1xxlg0mz.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%2Fd6itp3prycky1xxlg0mz.png" alt="You should be able to see your user name and email" width="420" height="312"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Establishing a connection between git bash and git hub
&lt;/h2&gt;

&lt;p&gt;To connect GitBash to GitHub securely, we need to generate an SSH key.&lt;/p&gt;

&lt;p&gt;An SSH key is an access credential used by the Secure Shell (SSH) protocol to provide secure, passwordless authentication &lt;strong&gt;between two systems&lt;/strong&gt;. In this case, between Git Bash and Git Hub.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Generating an SSH key&lt;br&gt;
Type the following command: &lt;code&gt;ssh -keygen -t ed25519 -C "your Email"&lt;/code&gt; Then press Enter.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Starting the SSH agent&lt;br&gt;
What this agent does is securely hold your private SSH key in memory to avoid you entering the passphrase each time you make an SSH connection. In short, it connects automatically when GitBash needs to make a connection with GitHub.&lt;br&gt;
Run the following command &lt;code&gt;eval "$(ssh-agent -s)"&lt;/code&gt; and press enter&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Adding the SSH key.&lt;br&gt;
Type the following Command: &lt;code&gt;ssh-add ~./ssh/id_ed25519&lt;/code&gt;, press enter. In Windows, the key is mostly saved in the local disc C inside the users folder, where you will find the SSH sub-folder. There are two keys: the private and public keys. Whereby the public key goes to your GitHub.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Adding the SSH key to  GitHub&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Open the private key location.&lt;/li&gt;
&lt;li&gt;Open the key and copy it using a text editor of your choice e.g visual code studio.&lt;/li&gt;
&lt;li&gt;Open gitHub click the profile, and scroll down to find settings.&lt;/li&gt;
&lt;li&gt;Click the SSH and GPG Keys. Paste the copied key and save.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Testing the connection between GitBash and GitHub.
To test the connection, run the following command: &lt;code&gt;ssh -T git@github.com&lt;/code&gt;
You should be able to see the following:&lt;em&gt;Hi username! You've successfully authenticated.&lt;/em&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  What is Version Control?
&lt;/h2&gt;

&lt;p&gt;This is a system that tracks changes made to files overtime.&lt;br&gt;
The functions of version control are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Backup- prevents loss of work&lt;/li&gt;
&lt;li&gt;Enhances collaboration if you are working with a team.&lt;/li&gt;
&lt;li&gt;Lets you undo mistakes.&lt;/li&gt;
&lt;li&gt;Tracks progress of your projects.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Basic git workflow
&lt;/h2&gt;

&lt;p&gt;Most projects have the following workflow:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Modify files in your repository.&lt;/li&gt;
&lt;li&gt;Stage changes adding snapshots to your project using &lt;code&gt;git add&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Commit the changes by adding descriptions that describe: who made the change? What time was the change made? Why was it made?&lt;/li&gt;
&lt;li&gt;Pushing your local commits to your GitHub repo &lt;code&gt;git push&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Pulling changes made by other members to update your repository &lt;code&gt;git pull&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Understanding Push and Pull
&lt;/h2&gt;

&lt;p&gt;The term push and pull refers to git commands that are simply used to upload and download changes made to your code (projects) remotely. This is crucial as it backs up your project as well as makes collaboration easy.&lt;/p&gt;

&lt;p&gt;The &lt;code&gt;git push&lt;/code&gt; command is used to send the committed changes to your GitHub repository.&lt;br&gt;
The &lt;code&gt;git pull&lt;/code&gt; command is used to download content from a remote repository.&lt;/p&gt;

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

&lt;p&gt;Understanding Git Bash and  Git Hub is very important, as both of these combined provide a realible and effective method to manage projects, enhanced collaboration and easy tracking of changes. Therefore for a beginner developer understanding these tools is crucial.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
