Skip to main content

dataxid-syntheval

PyPI version Python versions License

Synthetic data quality evaluation — compare original and synthetic datasets with interactive HTML reports.

Quickstart

import polars as pl
from dataxid_syntheval import SynthEval

original = pl.read_csv("original.csv")
synthetic = pl.read_csv("synthetic.csv")

se = SynthEval(original=original, synthetic=synthetic)
se.to_html("report.html")

Programmatic access:

diffs = se.diff
diffs["column_diffs"]          # per-column stat deltas
diffs["alert_diff"]            # new / resolved alerts
diffs["distribution_overlays"] # histogram & frequency overlays
diffs["correlation_diffs"]     # correlation matrix differences

Quality Scores

Compute fidelity and privacy metrics with a holdout dataset:

import polars as pl
from dataxid_syntheval import SynthEval

original = pl.read_csv("train.csv")
synthetic = pl.read_csv("synthetic.csv")
holdout = pl.read_csv("holdout.csv")

se = SynthEval(original=original, synthetic=synthetic, holdout=holdout)

scores = se.scores
scores.fidelity                    # overall fidelity (%)
scores.fidelity_detail.univariate  # univariate accuracy (%)
scores.fidelity_detail.bivariate   # bivariate accuracy (%)
scores.fidelity_detail.per_column  # per-column breakdown

scores.privacy.dcr_share           # DCR share
scores.privacy.ims_training        # identical match share
scores.privacy.nndr_ratio          # NNDR ratio
scores.privacy.assessments         # descriptive text assessments

Privacy metrics require a holdout dataset. Without holdout, se.scores.privacy is None.

Features

  • Column-level stat comparison — mean, std, median, min/max, missing %, distinct count and more
  • Alert change detection — new and resolved data quality alerts between profiles
  • Distribution overlays — proportion-based histograms and categorical frequency charts for fair comparison across different dataset sizes
  • Correlation matrix diffs — Pearson, Spearman, Kendall, Cramér's V, Phik
  • Interactive HTML report — tabbed column comparison, ECharts visualizations, lazy chart rendering
  • Built on dataxid-profiling and Polars

Installation

pip install dataxid-syntheval

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_syntheval-0.3.0.tar.gz (28.6 MB view details)

Uploaded Source

Built Distribution

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

dataxid_syntheval-0.3.0-py3-none-any.whl (28.5 MB view details)

Uploaded Python 3

File details

Details for the file dataxid_syntheval-0.3.0.tar.gz.

File metadata

  • Download URL: dataxid_syntheval-0.3.0.tar.gz
  • Upload date:
  • Size: 28.6 MB
  • 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_syntheval-0.3.0.tar.gz
Algorithm Hash digest
SHA256 5851e484e918e2d7b8bfe6baec1b08c239a1bcda8e874c3cab4c09250b3377ff
MD5 168eb37fd3242e173db65d95d063b7cd
BLAKE2b-256 b4313391c0247326144b6ee714a91fa9bf0177041138f871ea43525233740317

See more details on using hashes here.

File details

Details for the file dataxid_syntheval-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: dataxid_syntheval-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 28.5 MB
  • 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_syntheval-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5c115718d9b08ab288a585ab3e37d1bc04922b9626293d3a384371661bda5de9
MD5 1f358c711034698cc4b0735c1b871b92
BLAKE2b-256 345fe22078a9e3af2be4ae3f4905d6d3f8224d525349958c91c7169872f1e9eb

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.3.0 This release

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