econirl.preprocessing.check_panel_structure
- econirl.preprocessing.check_panel_structure(df, id_col='id', period_col='period', state_col=None, action_col=None, require_balanced=False, require_consecutive=False)[source]
Validate panel data structure for DDC estimation.
Checks for common data issues that can cause estimation problems: - Missing values in key columns - Gaps in period sequences - Unbalanced panels - State/action value issues
- Parameters:
df (DataFrame) – Panel data
id_col (str) – Column name for individual identifier
period_col (str) – Column name for time period
state_col (str | None) – Optional column name for state (if provided, checks for missing)
action_col (str | None) – Optional column name for action (if provided, checks for missing)
require_balanced (bool) – If True, treat unbalanced panel as error
require_consecutive (bool) – If True, treat period gaps as error
- Returns:
PanelValidationResult with validation details
- Return type:
PanelValidationResult
Example
>>> from econirl.preprocessing import check_panel_structure >>> result = check_panel_structure(df, id_col='bus_id', period_col='period') >>> if not result.valid: ... print("Errors:", result.errors)