Skip to content

Regime

polars_ts.changepoint.regime

Regime detection via Gaussian Hidden Markov Model.

regime_detect(df, n_states=2, target_col='y', id_col='unique_id', time_col='ds', max_iter=100, tol=0.0001, seed=42)

Detect latent regimes using a Gaussian HMM (Baum-Welch).

Parameters

df Input DataFrame. n_states Number of hidden states (regimes). target_col Column to analyze. id_col Column identifying each time series. time_col Column with timestamps. max_iter Maximum EM iterations. tol Convergence tolerance on log-likelihood. seed Random seed for initialization.

Returns

pl.DataFrame Original DataFrame with "regime" column (integer state assignment) and "regime_prob" (probability of the assigned state).

_logsumexp(a, axis=None, keepdims=False)

Numerically stable log-sum-exp.