YData Profiling
Pandas Basics
1 min read
This section is 1 min read, full guide is 30 min read
Published Sep 29 2025, updated Oct 24 2025
21
Show sections list
0
Log in to enable the "Like" button
0
Guide comments
0
Log in to enable the "Save" button
Respond to this guide
Guide Sections
Guide Comments
PandasPython
YData Profiling (formerly Pandas Profiling) is a tool that automatically generates detailed exploratory data analysis (EDA) reports from a pandas DataFrame.

It provides summaries such as:
- Data types and missing values
- Descriptive statistics
- Correlations between features
- Duplicates, distributions, and warnings
- Interactive visualisations
It’s a great first step after loading a dataset into pandas — saving you hours of manual exploration.
Installation
You can install it via pip:
pip install ydata-profiling
Copy to Clipboard
If you’re using Jupyter notebooks, restart the kernel after installing.
Basic Usage with Pandas
import pandas as pd
from ydata_profiling import ProfileReport
# Example dataset
df = pd.read_csv("data.csv")
# Create a basic profile report
profile = ProfileReport(df)
# for Jupyter display
profile.to_notebook_iframe()
Copy to Clipboard
Toggle show comments
Alternatively, export to an HTML file:
profile.to_file("data_profile.html")
Copy to Clipboard
Key Options in ProfileReport
minimal- Creates a lighter, faster report (no correlations, fewer visuals) eg.ProfileReport(df, minimal=True)explorative- Adds interactive, advanced visuals eg.ProfileReport(df, explorative=True)title- Sets a custom report title eg.ProfileReport(df, title="Customer Data Profiling")samples- Number of samples shown per column eg.ProfileReport(df, samples={"head": 5, "tail": 5})correlations- Controls correlation methods eg.ProfileReport(df, correlations={"pearson": {"calculate": True}})config_file- Load a YAML config for advanced setups eg.ProfileReport(df, config_file="profile_config.yaml")
Typical Workflow
import pandas as pd
from ydata_profiling import ProfileReport
# 1. Load your data
df = pd.read_csv("dataset.csv")
# 2. Inspect data quickly
print(df.info())
print(df.describe())
# 3. Generate the profiling report
profile = ProfileReport(df, title="EDA Report", explorative=True)
# 4. Display in notebook or export Inline in Jupyter
profile.to_notebook_iframe()
# or Export to file
# profile.to_file("report.html")
Copy to Clipboard
Toggle show comments
When to Use
Use YData Profiling right after loading — it’s ideal for:
- Understanding dataset structure
- Detecting missing or inconsistent data
- Spotting potential outliers
- Getting a quick sense of correlations or redundancy














