Synthetic data generation and evaluation library
Project description
|
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
DataProcessorfor 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
906f5db0957227b3133276862b7e203a2c3bdd3e0d7f0e9fb674905dd0ac9e59
|
|
| MD5 |
e54c9982d7ea4bea23e6d58e8ad59720
|
|
| BLAKE2b-256 |
de39d4be0fe507ccbf5057cfc1db6e498201d5c79966ad0b8158c5b47b017f4a
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6980858b2833138c01473bedc8a6cea6fe6b05b2535242dd2c11c5256c07f242
|
|
| MD5 |
404e70a62b1cfd24e30adfb2ccddcb0d
|
|
| BLAKE2b-256 |
56e27ec119259fbab1a0cacc3930fd9ae2c37638dec8d48db2d20a61cf844862
|