Skip to main content

df-autoprofiler

df-autoprofiler is a lightweight, heuristic-based data profiling tool for pandas DataFrames.
It generates a self-contained HTML report with summaries, correlations, outlier detection, visualizations, and actionable suggestions — designed to scale to large datasets via sampling.


1. Dataset Overview

Provides a high-level summary of your dataset:

  • Number of rows and columns
  • Numeric vs categorical feature detection
  • Missing data indicators
  • High-cardinality detection
  • Machine Learning suitability hints

Once you create a profile with from df_autoprofiler.profiler import profile, you can do:

report = profile(df)

You can then access:

  • report.numerics — numeric feature summaries

  • report.categoricals — categorical feature summaries

  • report.correlations — correlation tables

  • report.outliers — outlier detection results

  • report.missing — missing data summaries

  • report.suggestions — actionable suggestions

2. Statistical Summaries

Numeric features: count, mean, std, quantiles, missing %

Categorical features: unique values, top category, frequency

All summaries are available via the report object:

numeric_summary = report.numerics
categorical_summary = report.categoricals

3. Correlations

Numeric ↔ Numeric: Pearson & Spearman

Categorical ↔ Categorical: Cramér’s V (with safety heuristics)

Categorical ↔ Numeric: Correlation Ratio (η²)

Automatic skipping of unstable or misleading correlations

Warnings when sampling or heuristics are applied

Access correlations:

report.correlations["numeric"]["pearson"]
report.correlations["numeric"]["spearman"]
report.correlations["mixed"]

4. Outlier Detection

IQR-based detection

Reports row indices per column

Skips constant or invalid columns

Access outliers:

outliers = report.outliers

5. Missing Data Analysis

Detects missing values across columns

Generates summary tables with counts and percentages

Access missing data:

missing_data = report.missing

6. Heuristic Suggestions

Prioritized recommendations with three levels:

  • 🚨 High priority

  • ⚠️ Medium priority

  • ℹ️ Low priority

Examples:

High skew → consider log/Box-Cox transform

High missingness → consider imputation

Constant columns → consider dropping

Access suggestions:

suggestions = report.suggestions

7. Visualizations

Histograms, distributions, and correlation plots

Embedded directly into the HTML report

Handles special characters safely in filenames

Generate plots:

report.plots['hist_{NAME_OF_COL}']

Quickstart Example

import pandas as pd
from df_autoprofiler.profiler import profile

df = pd.read_csv("data.csv")

# Create the profile
report = profile(df)

# Access summaries
print(report.numerics.head())
print(report.categoricals.head())
print(report.missing.head())

# Generate HTML report
report.to_html("report.html")

Handling Large Datasets

  • Automatic sampling to maintain performance

  • Warnings included in report when sampling is applied

Example with a large synthetic dataset:

import pandas as pd
import numpy as np
from df_autoprofiler.profiler import profile

n = 1_000_000
df_large = pd.DataFrame({
    f"num_{i}": np.random.randn(n) for i in range(10)
})
for j in range(5):
    df_large[f"cat_{j}"] = np.random.choice(["A","B","C","D"], size=n)

report = profile(df_large)
report.to_html("large_report.html")

Installation

pip install df-autoprofiler

Known Limitations

  • Correlation measures are heuristic-based

  • ML readiness scoring is qualitative

  • Sampling may hide rare patterns

  • Bugs

📄 License

MIT License

🙌 Acknowledgments

Built with:

  • pandas

  • numpy

  • scipy

  • matplotlib

Metadata

Release files for df-autoprofiler 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for df-autoprofiler 0.1.1
File Size Uploaded Provenance Actions
df_autoprofiler-0.1.1.tar.gz 12.4 kB Without provenance Details for df_autoprofiler-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for df-autoprofiler 0.1.1
File Interpreter ABI Platform Actions
df_autoprofiler-0.1.1-py3-none-any.whl Python 3 none any Details for df_autoprofiler-0.1.1-py3-none-any.whl

Total release size: 25.7 kB

Release files / df_autoprofiler-0.1.1.tar.gz

Download URL df_autoprofiler-0.1.1.tar.gz
Size 12.4 kB
Tags Source
SHA-256 checksum
How to use checksums
f5ea14ab442bc534361c3f9772707f9de01277b76b2fb13ca2080821b01a265f
BLAKE2b-256 checksum
How to use checksums
7c3efcc4222145ff6e1d3894dc55535ec068430daba340b33ee30af400df43a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.5

Release files / df_autoprofiler-0.1.1-py3-none-any.whl

Download URL df_autoprofiler-0.1.1-py3-none-any.whl
Size 13.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6fc61291a019704f0e91c0a9ab362c6c382b970bebac1f6ea730e945acdf5112
BLAKE2b-256 checksum
How to use checksums
114b02cd7fc186ecab368db1be967619f275dcc6297224ff9f29ef2b910d1b8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.5

Security for df-autoprofiler 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page