Aggregation Helpers

The module fhops.evaluation.playback.aggregates provides convenience functions to transform playback summaries into Pandas dataframes and higher-level KPI-ready rollups.

API summary

Aggregation helpers for playback summaries.

fhops.evaluation.playback.aggregates.day_dataframe(result)[source]

Return the day-level playback summaries as a DataFrame.

Parameters:

result (PlaybackResult)

Return type:

DataFrame

fhops.evaluation.playback.aggregates.day_dataframe_from_ensemble(ensemble, *, include_base=False)[source]

Concatenate day-level summaries from an ensemble.

Parameters:
Return type:

DataFrame

fhops.evaluation.playback.aggregates.machine_utilisation_summary(shift_df)[source]

Aggregate shift summaries into per-machine utilisation metrics.

Parameters:

shift_df (DataFrame) – DataFrame produced by shift_dataframe() or *_from_ensemble; must include total_hours and available_hours columns.

Returns:

One row per (sample_id, machine_id) with total/available hours, utilisation ratio, production, mobilisation cost, and constraint violation counts.

Return type:

pandas.DataFrame

fhops.evaluation.playback.aggregates.shift_dataframe(result)[source]

Return the shift-level playback summaries as a DataFrame.

Parameters:

result (PlaybackResult) – PlaybackResult returned by fhops.evaluation.playback.core.run_playback().

Return type:

DataFrame

fhops.evaluation.playback.aggregates.shift_dataframe_from_ensemble(ensemble, *, include_base=False)[source]

Concatenate shift summaries from a stochastic ensemble.

Parameters:
  • ensemble (EnsembleResult) – Result of fhops.evaluation.playback.stochastic.run_stochastic_playback().

  • include_base (bool) – When True, include the base deterministic result in addition to samples.

Return type:

DataFrame