Stop 05 · Exploratory Data Analysis & Feature EngineeringTopics · 1/9

EDA Process & Techniques

Part of the Data Science Roadmap

In short

Before you model anything, get to know your data properly. Exploratory data analysis, or EDA, catches broken columns, odd patterns and good ideas while they're still cheap to act on.

A structured first look at any new dataset — shape, types, distributions, missing values and early patterns — done before any modeling, since garbage understanding leads to garbage models.

The mascot walks down a small neighbourhood lane with a notebook, looking at shops and houses.

Think of it like this

Exploring a new neighbourhood

When you shift to a new city, you first walk around. Where's the market, which lane floods in rain, which shop opens late. You look at each place alone, then notice how they connect. EDA is that first walk around your data.

Watch it happen

What to look at, in order

EDA
Data quality
One column
Two columns
Missing, dupes
Histogram
value_counts
Scatter plot
Box by group

1/5Start with quality: types, missing values and duplicates. Problems here distort everything after.

The big ideas

What you need to know

Explore with questions

Ask 'what drives price?' or 'which users churn?' so your plots have a purpose.

Univariate, then bivariate

Understand each column alone before comparing columns. It makes surprises easier to explain.

Look, don't just compute

A plot reveals things a summary table hides, like two clusters with the same average.

Write down findings

Keep a running list of issues and ideas. It becomes your cleaning plan and your feature list.

See it in code

Walk through the code

python
1import pandas as pd2import seaborn as sns3import matplotlib.pyplot as plt4 5df = pd.read_csv("houses.csv")6df.info()7print(df["city"].value_counts().head())8 9fig, axes = plt.subplots(1, 3, figsize=(15, 4))10sns.histplot(df["price"], ax=axes[0])11sns.scatterplot(data=df, x="area_sqft", y="price", ax=axes[1])12sns.boxplot(data=df, x="bedrooms", y="price", ax=axes[2])13plt.show()

1/4Load the data, check types and missing counts, and see the most common cities.

Three plots in one row cover the basics: one column's shape, a numeric relationship, and a comparison across groups.

Save yourself the pain

Common mistakes

Oops

Jumping into modelling after df.head() looks fine.

Do this instead

Five rows hide a lot. Check every column's type, missing share and distribution first.

Oops

Looking at averages only.

Do this instead

Plot distributions too. Two groups with the same mean can look completely different.

Your mission

A 30-minute EDA sprint

~30 min

Quick check

Two cities have the same average flat price. What's the best next step in EDA?

Go deeper

  1. 1Run a basic profile (shape, dtypes, null counts, summary stats) on any new dataset before modeling.
  2. 2Build a personal checklist of the first 5 things you always check.
  3. 3Practice on a genuinely messy public dataset to build pattern recognition.

More topics at this stop

Stuck on this topic? Ask an Insider

Get 1:1 guidance from people who've walked this exact path — on the InsideEdge app.

Download
InsideEdge