Categories: Power BI
Tags:

Step-by-Step Deep Tutorial

By Ankit Srivastava


In this tutorial, I will guide you step by step through creating a professional Exploratory Data Analysis (EDA) dashboard in Power BI using the Health Insurance dataset downloaded from Kaggle.

Dataset Source: Kaggle – Insurance Dataset
Target Variable: Insurance_Cost

In Part 1, we focus on:

  • Understanding the dataset
  • Performing data cleaning
  • Creating DAX measures
  • Building KPI cards
  • Designing visuals
  • Creating slicers
  • Applying formatting and layout principles
  • Publishing insights from EDA

In Part 2, we will use advanced fields and build predictive insights.

Let’s begin.


1️⃣ Understanding the Dataset

Before opening Power BI, the first step in any data analytics project is business understanding.

This dataset typically contains the following columns:

  • age
  • gender
  • bmi
  • children
  • smoker
  • region
  • insurance_cost
  • alcohol (custom engineered field if added)
  • cholesterol_level (if engineered)
  • exercise
  • covered_by_other
  • applicant_id

In our dashboard, we considered Insurance_Cost as the target variable.

Get the Dataset here: https://www.kaggle.com/datasets/gdeepakreddy/insurance

Business Objective

We want to answer:

  • What is the total insurance cost?
  • What is the average cost?
  • Does alcohol affect insurance cost?
  • Does cholesterol level impact premium?
  • Does exercise reduce premium?
  • Does location influence cost?
  • Is there a gender difference in total insurance spending?

This is classic Exploratory Data Analysis (EDA).


2️⃣ Loading Data into Power BI

Step 1: Open Power BI Desktop

Click → Home → Get Data → Text/CSV

Step 2: Select Data.csv

Browse to your downloaded Kaggle dataset and click Load.

Step 3: Open Power Query Editor

Click: Transform Data

Here we check:

  • Data types
  • Missing values
  • Incorrect formatting
  • Column names

3️⃣ Data Cleaning in Power Query

3.1 Rename Columns

Rename columns properly:

insurance_cost → Insurance_Cost
applicant_id → Applicant_ID

Use proper naming convention:

  • No spaces
  • Use underscore

3.2 Data Types

Check each column:

  • Age → Whole Number
  • Gender → Text
  • BMI → Decimal Number
  • Insurance_Cost → Decimal Number
  • Cholesterol_Level → Text
  • Exercise → Text
  • Alcohol → Text

If data types are incorrect:
Select column → Transform → Data Type


3.3 Handling Missing Values

Click on any column → Filter → Check for blanks.

If blanks exist:

  • Remove rows OR
  • Replace with meaningful value

For this EDA, we assume dataset is clean.

Click → Close & Apply


4️⃣ Creating DAX Measures (Very Important)

Now comes the analytical part.

Never rely only on raw columns.
Always create DAX measures.

Go to Modeling → New Measure


4.1 Total Insurance Cost

Total Insurance_cost = SUM(SupplyChainData[Insurance_Cost])

(Replace table name with your table name.)


4.2 Average Insurance Cost

Avg Insurance_cost = AVERAGE(SupplyChainData[Insurance_Cost])

4.3 Median Insurance Cost

Median Insurance_cost = MEDIAN(SupplyChainData[Insurance_Cost])

4.4 Insurance Cost Variance

Insurance_cost Var = 
VAR AvgCost = AVERAGE(SupplyChainData[Insurance_Cost])
RETURN
SUMX(
    SupplyChainData,
    (SupplyChainData[Insurance_Cost] - AvgCost)
)

4.5 Count of Applicants

Count of applicant_id = COUNT(SupplyChainData[Applicant_ID])

These measures will be used in KPI Cards.


5️⃣ Creating KPI Cards (Top Section)

The top of your dashboard shows summary metrics.

Insert Card Visual

Click Visualizations → Card

Add:

  • Total Insurance_cost
  • Avg Insurance_cost
  • Insurance_cost Var
  • Median Insurance_cost
  • Count of applicant_id

Formatting Tips (Professional Dashboard Design)

  1. Currency Symbol → ₹
    Format → Data Label → Display Units → Millions or Thousands
  2. Increase Font Size
  3. Use consistent color
  4. Add background shape behind cards
  5. Maintain equal spacing

This creates executive-level dashboard quality.


6️⃣ Average Insurance Cost by Alcohol

Step 1: Insert Bar Chart

Add:

Axis → Alcohol
Values → Avg Insurance_cost

Power BI automatically aggregates.


Analysis Insight

You observed:

  • No alcohol users have slightly higher cost
  • Daily drinkers slightly lower
  • Rare users in between

This suggests:
Alcohol may not be the strongest cost driver.


7️⃣ Average Insurance Cost by Cholesterol Level

Insert → Tree Map OR Bar Chart

Add:

Group → Cholesterol_Level
Values → Avg Insurance_cost

You noticed:

200–225 range has higher average
150–175 moderate
225–250 slightly lower

This helps healthcare providers understand risk clusters.


8️⃣ Average Insurance Cost by Covered by Other Company

Insert → Donut Chart

Legend → Covered_by_Other
Values → Avg Insurance_cost

Insight:

  • Covered by other company → Higher average cost
  • Not covered → Slightly lower

Possible interpretation:
People already covered may opt for higher-value policies.


9️⃣ Average Insurance Cost by Exercise

Insert → Column Chart

Axis → Exercise
Values → Avg Insurance_cost

Observation:

Moderate exercise → Highest
Extreme exercise → Lower
No exercise → Slightly lower

This is interesting because we usually expect non-exercisers to have higher premiums.

EDA reveals unexpected patterns.


🔟 Sum of Insurance Cost by Gender

Insert → Pie Chart

Legend → Gender
Values → Total Insurance_cost

You found:

Male contributes ~65%
Female ~35%

Important:
This does not mean males pay more per person.
It means total spending is higher (maybe more male applicants).


1️⃣1️⃣ Average Insurance Cost by Location

Insert → Map Visual

Location → Region
Size → Avg Insurance_cost

Now your dashboard becomes geographic.

This helps identify:

  • High-cost regions
  • Low-cost regions
  • Regional premium behavior

1️⃣2️⃣ Adding Slicers (Right Panel Filters)

Insert → Slicer

Add slicers for:

  • Alcohol
  • Cholesterol_Level
  • Covered_by_Other
  • Exercise
  • Gender
  • Location

Now users can dynamically filter.

For example:

Select:

  • Gender = Male
  • Alcohol = Daily

All visuals update automatically.

That’s the power of Power BI interactivity.


1️⃣3️⃣ Formatting Like a Professional

Color Theme

Go to:
View → Themes

Choose consistent blue theme.


Add Title

Insert → Text Box
Write:

Health Insurance Records – Exploratory Data Analysis – Part 1

Increase font to 28–32
Make bold.


Add Icons

Insert → Icons
Add finance/health icons to make dashboard modern.


1️⃣4️⃣ Dashboard Design Principles I Follow

As Ankit Srivastava, I always follow:

  1. Top row = KPIs
  2. Middle row = Category Analysis
  3. Bottom row = Deep insights
  4. Right panel = Filters
  5. Keep white background
  6. Maintain spacing symmetry
  7. Use rounded shapes

This makes dashboard corporate-ready.


1️⃣5️⃣ Business Insights Extracted (Very Important)

From Part 1 dashboard:

  1. Total Insurance Spending ≈ ₹ 679M
  2. Average cost ≈ ₹ 27K
  3. Males contribute more total premium
  4. Cholesterol level impacts premium
  5. Alcohol impact minimal
  6. Moderate exercise group shows higher cost
  7. Location affects average premium

This is pure EDA.

We did not predict.
We explored.


1️⃣6️⃣ Why Insurance_Cost as Target?

Because:

  • It is measurable
  • It is numeric
  • It is the final business outcome
  • Insurance companies optimize around it

Everything else is influencing factor.


1️⃣7️⃣ Common Mistakes Beginners Make

  1. Using raw columns instead of measures
  2. Not formatting currency
  3. Too many colors
  4. No slicers
  5. No business interpretation
  6. Not using median

Avoid these.


1️⃣8️⃣ Publishing the Dashboard

Click → Publish
Select Workspace

Now dashboard is available in:

Power BI Service
You can:

  • Share with team
  • Embed in website
  • Export to PDF
  • Schedule refresh

1️⃣9️⃣ What We Will Do in Part 2

In Part 2:

  • Create relationship models
  • Create calculated columns
  • Build Age groups
  • BMI categories
  • Smoker impact analysis
  • Advanced DAX (CALCULATE, FILTER)
  • Risk Segmentation
  • Interactive drill-through
  • Predictive insights

🎯 Final Thoughts from Ankit Srivastava

Exploratory Data Analysis is not just about charts.
It is about asking the right questions.

In this project, we transformed a simple CSV file into:

  • Executive KPIs
  • Risk pattern insights
  • Behavioral segmentation
  • Geographic distribution
  • Health indicator impact

Power BI is not just a visualization tool.
It is a business intelligence engine.

If you master:

  • Data cleaning
  • DAX measures
  • Formatting
  • Storytelling

You can convert any dataset into actionable insights.

This dashboard is beginner-friendly but built with professional design logic.

In real-world consulting, this is exactly how I approach projects:

Step 1 – Understand business
Step 2 – Clean data
Step 3 – Create measures
Step 4 – Build visuals
Step 5 – Extract insights
Step 6 – Communicate clearly

Data without storytelling is noise.
Data with interpretation is power.


If you’re following along, recreate this dashboard yourself.
Practice DAX.
Experiment with slicers.
Try adding Age & BMI next.

In Part 2, we will move from Exploration to Intelligence.

Stay tuned.


Ankit Srivastava
Digital Project Manager | IT Trainer | Data Analytics Mentor