Skip to main content

dataxid-profiling

PyPI version Python versions License

Fast, Polars-native data profiling with interactive HTML reports and data quality alerts.

Quickstart

import polars as pl
from dataxid_profiling import ProfileReport

df = pl.read_csv("data.csv")
report = ProfileReport(df)
report.to_html("report.html")

Pandas works too:

report = ProfileReport(pd.read_csv("data.csv"))

Report Preview

Dataset overview — row/column counts, missing cells, duplicates, memory usage, and column type distribution at a glance.

Dataset overview and alerts

Column details — per-column statistics, top value distribution with an explicit "Other" rollup for the long tail, and word clouds for categorical data.

Column details with charts and word cloud

Correlations — interactive heatmap showing relationships between numeric columns.

Correlation heatmap

Interactions — scatter plots for numeric pairs and box plots for categorical × numeric pairs, with dynamic column selection.

Highlights

  • Built on Polars — fast, memory-efficient, Rust-powered
  • 3 lines to profile any dataset
  • Programmatic-first: .to_dict(), .stats, .alerts
  • Interactive HTML reports with ECharts
  • Accepts Polars, Pandas, CSV, and Parquet
  • 5 column types: numeric, categorical, boolean, datetime, text
  • 7 data quality alerts out of the box
  • 5 correlation types: Pearson, Spearman, Kendall, Cramér's V, Phi K
  • Interactions: scatter plot + box plot with dynamic column selection
  • Categorical value counts keep the long tail via an explicit "Other" rollup (other_values)
  • Two modes: "complete" for deep analysis, "overview" for speed
  • Fully typed

Installation

pip install dataxid-profiling

Usage

Programmatic access

report = ProfileReport(df, title="Customer Data Profile")

stats = report.to_dict()
alerts = report.alerts
column_stats = report.stats["age"]
correlations = report.correlations

JSON export

report.to_json("report.json")

Configuration

from dataxid_profiling import ProfileReport, ProfileConfig

config = ProfileConfig(
    title="Customer Data Profile",
    mode="overview",
    missing_threshold=0.1,
    histogram_bins=30,
)
report = ProfileReport(df, config=config)

Modes

Feature "complete" "overview"
Basic stats
Histograms & value counts
Correlations
Interactions
Character analysis
Duplicate rows table

Output formats

Format Method Use case
HTML report.to_html("report.html") Interactive report
JSON report.to_json("report.json") Machine-readable
Dict report.to_dict() Python-native

Contributing

Contributions are welcome. See CONTRIBUTING.md for details.

Links

License

Apache-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dataxid_profiling-0.4.0.tar.gz (758.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dataxid_profiling-0.4.0-py3-none-any.whl (107.0 kB view details)

Uploaded Python 3

File details

Details for the file dataxid_profiling-0.4.0.tar.gz.

File metadata

  • Download URL: dataxid_profiling-0.4.0.tar.gz
  • Upload date:
  • Size: 758.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dataxid_profiling-0.4.0.tar.gz
Algorithm Hash digest
SHA256 fa9b9e6dca48fafd3aff8497261116cca0ab6cbf50d86564db68ade243459aad
MD5 11298c35c8206c4d85af0b1d6c998e85
BLAKE2b-256 df01a81f2993e1aea9e59bbefe82a5aca366f6416b04a2fdaf3922bd653e12ca

See more details on using hashes here.

File details

Details for the file dataxid_profiling-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: dataxid_profiling-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 107.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dataxid_profiling-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 74f28e9b0aae786660ff36598c64020cefc5f0a454a167e982ac6a0ee0b54a00
MD5 d60d2d0b9591fd22fe9b0aae32fa5cf5
BLAKE2b-256 2644cbab2190fb9209b1abb2d3504165f8d4f9674f8ec7ac9ad5704879577b8d

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page