Metadata-Version: 2.4
Name: eda-datapilot
Version: 0.2.0
Summary: DataPilot - A powerful, automated Exploratory Data Analysis (EDA) library in Python
Author-email: Sakshi Nagare <sakshinagare2112@gmail.com>
License: MIT
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Information Analysis
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: jinja2>=3.1.0
Requires-Dist: loguru>=0.7.0
Requires-Dist: matplotlib>=3.7.0
Requires-Dist: numpy>=1.24.0
Requires-Dist: pandas>=2.0.0
Requires-Dist: plotly>=5.14.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: scikit-learn>=1.2.0
Requires-Dist: scipy>=1.10.0
Requires-Dist: seaborn>=0.12.0
Provides-Extra: dev
Requires-Dist: black>=23.0.0; extra == 'dev'
Requires-Dist: mypy>=1.3.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.1.0; extra == 'dev'
Requires-Dist: pytest>=7.3.0; extra == 'dev'
Requires-Dist: ruff>=0.1.0; extra == 'dev'
Description-Content-Type: text/markdown

# 🚀 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

```bash
pip install -e .
```

---

## 💻 Quick Start

### Simple Functional API

```python
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

```python
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

```text
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
```
