pavise.pandas
Pandas backend for type-parameterized DataFrame with Protocol-based schema validation.
- class pavise.pandas.DataFrame(data=None, *args, strict=False, **kwargs)[source]
Bases:
DataFrame,Generic[SchemaT_co]Type-parameterized DataFrame with runtime validation for pandas.
Usage:
# Static type checking only def process(df: DataFrame[UserSchema]) -> DataFrame[UserSchema]: return df # Runtime validation validated = DataFrame[UserSchema](raw_df)
The type parameter is covariant, allowing structural subtyping. DataFrame[ChildSchema] is compatible with DataFrame[ParentSchema] when ChildSchema has all columns of ParentSchema.
- classmethod __class_getitem__(schema)[source]
Create a new DataFrame class with schema validation.
- Parameters:
schema (type)
- static __new__(cls, data=None, *args, strict=False, **kwargs)[source]
Create a new DataFrame instance.
- __init__(data=None, *args, strict=False, **kwargs)[source]
Initialize DataFrame with optional schema validation.
- Parameters:
- Raises:
ValueError – If required column is missing
TypeError – If column has wrong type
- Return type:
None