DomainConstraint¶
- class synthyverse.evaluation.fidelity.DomainConstraint(constraint_list)¶
Bases:
objectRegistry name:
domainconstraintEvaluate boolean pandas expressions on real and synthetic data.
- Parameters:
constraint_list (list) – List of expressions accepted by DataFrame.eval.
Example
>>> import pandas as pd >>> from synthyverse.evaluation import DomainConstraint >>> from synthyverse.evaluation.eval import TabularMetricEvaluator >>> >>> # Prepare data >>> X_real = pd.DataFrame(...) >>> X_syn = pd.DataFrame(...) >>> >>> # Define constraints as boolean DataFrame.eval expressions >>> constraints = [ ... "age >= 18", ... "systolic_bp > diastolic_bp", ... ] >>> >>> # Create metric >>> metric = DomainConstraint(constraint_list=constraints) >>> >>> # Evaluate >>> results = metric.evaluate(X_real, X_syn)
- evaluate(X_train, X_syn)¶
Evaluate each domain constraint on real and synthetic data.
- Parameters:
X_train (
DataFrame) – Real training data as a pandas DataFrame.X_syn (
DataFrame) – Synthetic data as a pandas DataFrame.
- Returns:
Mean truth value for each constraint on real and synthetic data.
- Return type:
dict