YData Profiling
Pandas Basics
1 min read
This section is 1 min read, full guide is 30 min read
Published Sep 29 2025, updated Aug 17 2026
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-profilingIf you’re using Jupyter notebooks, restart the kernel after installing.
Basic Usage with Pandas
import pandas as pdfrom ydata_profiling import ProfileReport# Example datasetdf = pd.read_csv("data.csv")# Create a basic profile reportprofile = ProfileReport(df)# for Jupyter displayprofile.to_notebook_iframe() Alternatively, export to an HTML file:
profile.to_file("data_profile.html")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 pdfrom ydata_profiling import ProfileReport# 1. Load your datadf = pd.read_csv("dataset.csv")# 2. Inspect data quicklyprint(df.info())print(df.describe())# 3. Generate the profiling reportprofile = ProfileReport(df, title="EDA Report", explorative=True)# 4. Display in notebook or export Inline in Jupyterprofile.to_notebook_iframe() # or Export to file# profile.to_file("report.html") 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