Skip to main content

Synthetic data generation and evaluation library

Project description

Synthyverse logo

Welcome to the synthyverse!

An extensive ecosystem for synthetic data generation and evaluation in Python.

Read the docs for in-depth usage.

The synthyverse is a work in progress. Please provide any suggestions through a GitHub Issue.

Features

  • Tabular synthetic data generators. Use low-level generators directly, or wrap them with shared preprocessing through SynthyverseGenerator.
  • Evaluation metrics. Compare synthetic data with fidelity, utility, and privacy metrics through individual metric classes or TabularMetricEvaluator.
  • Benchmarking workflows. Train, sample, evaluate, and save benchmark artifacts with TabularSynthesisBenchmark.
  • Shared preprocessing. Reuse DataProcessor for missing-value handling, schema restoration, and column constraints.

Installation

Install synthyverse from PyPI:

pip install synthyverse

The base package is MIT licensed and does not install the ctgan package. CTGANGenerator and TVAEGenerator are only available when installing the optional CTGAN extra:

pip install "synthyverse[ctgan]"

That extra installs the ctgan dependency, which is distributed under the Business Source License. Review that license before using CTGAN or TVAE functionality.

Third-party attribution, license, NOTICE, and modification details are listed in THIRD_PARTY_NOTICES.md.

For local development from a clone:

pip install -e .

Usage

Use a high-level wrapper when you want preprocessing and schema restoration handled for you:

from synthyverse.generators import SynthyverseGenerator

generator = SynthyverseGenerator(
    "univariate",
    missing_imputation_method="median",
    random_state=42,
)
generator.fit(X, discrete_features=["category", "target"])
X_syn = generator.generate(1000)

Use the lower-level APIs when you want explicit control over preprocessing, generator fitting, metrics, or benchmarking. See the docs for complete examples.

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

synthyverse-0.2.3.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

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

synthyverse-0.2.3-py3-none-any.whl (159.3 kB view details)

Uploaded Python 3

File details

Details for the file synthyverse-0.2.3.tar.gz.

File metadata

  • Download URL: synthyverse-0.2.3.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.18

File hashes

Hashes for synthyverse-0.2.3.tar.gz
Algorithm Hash digest
SHA256 906f5db0957227b3133276862b7e203a2c3bdd3e0d7f0e9fb674905dd0ac9e59
MD5 e54c9982d7ea4bea23e6d58e8ad59720
BLAKE2b-256 de39d4be0fe507ccbf5057cfc1db6e498201d5c79966ad0b8158c5b47b017f4a

See more details on using hashes here.

File details

Details for the file synthyverse-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: synthyverse-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 159.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.18

File hashes

Hashes for synthyverse-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 6980858b2833138c01473bedc8a6cea6fe6b05b2535242dd2c11c5256c07f242
MD5 404e70a62b1cfd24e30adfb2ccddcb0d
BLAKE2b-256 56e27ec119259fbab1a0cacc3930fd9ae2c37638dec8d48db2d20a61cf844862

See more details on using hashes here.

Supported by

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