Jump to content

Connect Leeroopedia MCP: Equip your AI agents to search best practices, build plans, verify code, diagnose failures, and look up hyperparameter defaults.

Implementation:Sdv dev SDV BaseConstraint Is Valid

From Leeroopedia
Knowledge Sources
Domains Data_Quality, Validation
Last Updated 2026-02-14 00:00 GMT

Overview

Concrete tool for validating synthetic data against constraint definitions, provided by the SDV library.

Description

The BaseConstraint.is_valid method checks whether data rows satisfy the constraint's rules. It accepts either a DataFrame (single-table) or a dictionary of DataFrames (multi-table) and returns a boolean Series indicating row validity.

Usage

Call is_valid on a fitted constraint with synthetic data to check satisfaction.

Code Reference

Source Location

  • Repository: SDV
  • File: sdv/cag/base.py
  • Lines: L305-333

Signature

def is_valid(self, data, metadata=None):
    """Check whether table rows are valid for this constraint.

    Args:
        data (pd.DataFrame or dict[pd.DataFrame]): Data to validate.
        metadata (Metadata or None): Optional metadata (required if not fitted).

    Returns:
        pd.Series or dict[str, pd.Series]: Boolean values per row.
    """

Import

from sdv.cag import Inequality
# is_valid is called as: constraint.is_valid(synthetic_data)

I/O Contract

Inputs

Name Type Required Description
data pd.DataFrame or dict Yes Data to validate
metadata Metadata or None No Required if constraint not yet fitted

Outputs

Name Type Description
return value pd.Series or dict[str, pd.Series] Boolean Series indicating valid rows

Usage Examples

from sdv.cag import Inequality

constraint = Inequality(
    low_column_name='start_date',
    high_column_name='end_date',
)

# After fitting the constraint
constraint.fit(data, metadata)

# Validate synthetic data
validity = constraint.is_valid(synthetic_data)
print(f"Valid rows: {validity.sum()} / {len(validity)}")

Related Pages

Implements Principle

Requires Environment

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment