econirl.TransitionEstimator
- class econirl.TransitionEstimator(n_states=90, max_increase=2)[source]
Bases:
objectSklearn-style estimator for mileage transition probabilities.
Estimates the distribution of mileage increments from panel data, following the first-stage estimation in Rust (1987).
- Parameters:
- Variables:
Examples
>>> from econirl.transitions import TransitionEstimator >>> from econirl.simulation.synthetic import simulate_panel >>> from econirl.environments.rust_bus import RustBusEnvironment >>> env = RustBusEnvironment() >>> panel = simulate_panel(env, n_individuals=100, n_periods=100) >>> estimator = TransitionEstimator(n_states=90, max_increase=2) >>> estimator.fit(panel) >>> print(f"theta = {estimator.probs_}") >>> print(estimator.summary())
- fit(data, state=None, id=None, action=None)[source]
Fit the transition estimator to panel data.
Counts state transitions for observations where action=0 (keep/no replacement) and estimates the probability distribution over increments.
- Parameters:
data (Panel) – Panel data containing trajectories of state-action-next_state.
state (str, optional) – Ignored. For API compatibility with DataFrame-based methods.
id (str, optional) – Ignored. For API compatibility with DataFrame-based methods.
action (str, optional) – Ignored. For API compatibility with DataFrame-based methods.
- Returns:
self – Returns self for method chaining.
- Return type: