DataPilot - A powerful, automated Exploratory Data Analysis (EDA) library in Python
Project description
๐ DataPilot: Automated Exploratory Data Analysis Library
datapilot is a modern, modular Python library for automated Exploratory Data Analysis (EDA). It generates comprehensive dataset overviews, missingness analysis, statistical summaries, outlier/duplicate detection, correlation matrices, automated data quality auditing, actionable suggestions, ML task detection, feature importance analysis, interactive charts, and standalone HTML reports.
๐ Key Features
- Phase 1: Basic Summaries & Statistics
- Dataset overview (rows, columns, memory, data types breakdown)
- Missing value analysis (counts, percentages, visual progress bars)
- Comprehensive numerical statistics (mean, median, mode, std, skewness, kurtosis, quantiles, zeros)
- Categorical statistics (unique values, most frequent value, top 10 categories breakdown)
- Duplicate detection (rows, %, constant columns, duplicate column pairs)
- Correlation matrices (Pearson, Spearman, Kendall)
- Outlier detection (IQR & Z-score bounds, counts, indices)
- Phase 2: Automatic Data Quality Audit
- Instant alerts for high correlation, zero variance, high cardinality, missing values, class imbalance, and severe skewness.
- Phase 3: Actionable Suggestions
- Automated recommendations for imputation strategies, log/power transformations, feature drops, and outlier clipping.
- Phase 4: Machine Learning Insights
- Automatic task detection (Regression, Binary/Multiclass Classification, Time Series, Clustering)
- Feature Importance calculation via Random Forests & Mutual Information
- PCA variance ratio analysis
- Phase 5: Interactive HTML Report Generation
- Standalone, self-contained HTML reports powered by Jinja2 & Plotly.
๐ฆ Installation
pip install -e .
๐ป Quick Start
Simple Functional API
import pandas as pd
import datapilot
# Load dataset
df = pd.read_csv("dataset.csv")
# Run full automated analysis & show report in browser
report = datapilot.analyze(df, target="target_column")
report.show("datapilot_report.html")
Object-Oriented API
from datapilot import EDA
eda = EDA(df, target="target_column")
# Step-by-step analytical calls
summary = eda.summary()
missing = eda.missing()
outliers = eda.outliers()
correlation = eda.correlation()
problems = eda.problems()
recs = eda.recommendations()
# Generate & save report
report = eda.report()
report.to_html("DataPilot_Report.html")
๐ ๏ธ Project Structure
datapilot/
โ
โโโ datapilot/
โ โโโ __init__.py
โ โโโ analyzer.py
โ โโโ summary.py
โ โโโ missing.py
โ โโโ numeric.py
โ โโโ categorical.py
โ โโโ correlation.py
โ โโโ outliers.py
โ โโโ duplicates.py
โ โโโ problem_detector.py
โ โโโ recommender.py
โ โโโ ml_insights.py
โ โโโ visualization.py
โ โโโ report.py
โ โโโ utils.py
โ โโโ config.py
โ โโโ templates/
โ โโโ report.html.j2
โ
โโโ tests/
โ โโโ test_analyzer.py
โ โโโ test_summary.py
โ โโโ test_outliers.py
โ โโโ test_report.py
โ โโโ test_recommendations.py
โ
โโโ examples/
โ โโโ demo.py
โโโ pyproject.toml
โโโ setup.py
โโโ requirements.txt
โโโ README.md
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file eda_datapilot-0.1.0.tar.gz.
File metadata
- Download URL: eda_datapilot-0.1.0.tar.gz
- Upload date:
- Size: 171.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
353d6810d622a049a37978139d60f83dc1735d89e0de3cbeccd158c996238119
|
|
| MD5 |
1862592323bd5921410dfd48e33648b0
|
|
| BLAKE2b-256 |
79f30f330951e2b91599768bffa835dfd73d43800ae2e05760fbf13a55e6db5d
|
File details
Details for the file eda_datapilot-0.1.0-py2.py3-none-any.whl.
File metadata
- Download URL: eda_datapilot-0.1.0-py2.py3-none-any.whl
- Upload date:
- Size: 29.9 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3aa14cef62fc6f1d122718732865cd92671f633c1cb482312cb763061d86e5f8
|
|
| MD5 |
1a1d100b818471af87e6342d3c838765
|
|
| BLAKE2b-256 |
9313e8d6199522378500f1c85b30bdb928a7e74936e5478da4fdcb19ab4c3b19
|