pdstools.impactanalyzer.Schema

Schema definitions for Impact Analyzer experiment data.

These classes mirror the convention used by pdstools.adm.Schema and document the columns expected by ImpactAnalyzer. Required columns are validated in ImpactAnalyzer._validate_ia_data(); optional columns (e.g. those prefixed with Pega_) are populated only by some data sources.

Attributes

REQUIRED_IA_COLUMNS

Columns that must be present on the LazyFrame passed to ImpactAnalyzer.

Classes

ImpactAnalyzerData

Normalised long-format experiment data consumed by ImpactAnalyzer.

Module Contents

class ImpactAnalyzerData

Normalised long-format experiment data consumed by ImpactAnalyzer.

Required columns

SnapshotTimepl.Datetime | pl.Date

Snapshot date for the row.

ControlGrouppl.Utf8

Control / test group identifier (e.g. "NBA", "PropensityPriority").

Impressionsnumeric

Impression count.

Acceptsnumeric

Accept count.

ValuePerImpressionpl.Float64

Average per-impression value (may be null for PDC data).

Channelpl.Utf8

Channel name (or Channel/Direction for VBD data).

Optional columns

Pega_ValueLift, Pega_ValueLiftIntervalpl.Float64

Pre-computed lift values present only in PDC exports.

SnapshotTime
ControlGroup
Impressions
Accepts
ValuePerImpression
Channel
Pega_ValueLift
Pega_ValueLiftInterval
REQUIRED_IA_COLUMNS: tuple[str, Ellipsis] = ('SnapshotTime', 'ControlGroup', 'Impressions', 'Accepts', 'ValuePerImpression', 'Channel')

Columns that must be present on the LazyFrame passed to ImpactAnalyzer.