Base Utilities#

Dependency-free primitives shared by the other corr_vars.utils submodules: frame introspection, expression coercion, and offset normalisation.

Expressions#

corr_vars.utils.base.as_expr(value)[source]#
Parameters:

value (Expr | str)

Return type:

Expr

corr_vars.utils.base.column_selector(value)[source]#
Parameters:

value (str)

Return type:

Expr

Frame Introspection#

corr_vars.utils.base.columns(value)[source]#
Parameters:

value (DataFrame | LazyFrame)

Return type:

list[str]

corr_vars.utils.base.struct_fields(value, field)[source]#
Parameters:
  • value (pl.DataFrame | pl.LazyFrame)

  • field (ColumnNameOrSelector)

Return type:

list[str]

corr_vars.utils.base.col_length(value)[source]#
Parameters:

value (DataFrame | LazyFrame)

Return type:

int

corr_vars.utils.base.row_length(value)[source]#
Parameters:

value (DataFrame | LazyFrame)

Return type:

int

corr_vars.utils.base.is_empty(value)[source]#
Parameters:

value (DataFrame | LazyFrame)

Return type:

bool

Offsets#

corr_vars.utils.base.normalize_offset(offset)[source]#

Coerce an offset to the polars duration language.

A polars-duration string ("28d", "6h") is returned unchanged; a timedelta is rendered in microseconds. This is the single place that turns an OffsetLike into the string dt.offset_by needs — which does not accept a timedelta.

Parameters:

offset (str | timedelta)

Return type:

str