Skip to content

operator_performance

operator_performance ¤

Operator/team performance tracking.

Compare production output and quality across operators: - Production by operator - Operator efficiency vs targets - Quality by operator - Operator ranking/comparison

OperatorPerformanceTracking ¤

OperatorPerformanceTracking(
    dataframe: DataFrame,
    *,
    time_column: str = "systime",
    shift_definitions: Optional[
        Dict[str, tuple[str, str]]
    ] = None
)

Bases: Base

Track and compare operator performance.

Each UUID represents one signal: - operator_uuid: operator or team identifier signal - counter_uuid: production counter signal - ok_uuid / nok_uuid: good/bad parts counters (optional, for quality)

Merge keys: [operator] for operator-level, [date, shift] for shift-level.

Pipeline example::

ops = OperatorPerformanceTracking(df)
by_op = ops.production_by_operator('operator_id', 'part_counter')
# → standalone KPI report
quality = ops.quality_by_operator('operator_id', 'good_parts', 'bad_parts')
# → merge with QualityTracking outputs on [date, shift]
Example usage

tracker = OperatorPerformanceTracking(df)

Parts per operator¤

prod = tracker.production_by_operator( operator_uuid='operator_id', counter_uuid='part_counter', )

Efficiency vs target¤

eff = tracker.operator_efficiency( operator_uuid='operator_id', counter_uuid='part_counter', target_per_shift=500, )

production_by_operator ¤

production_by_operator(
    operator_uuid: str,
    counter_uuid: str,
    *,
    value_column_operator: str = "value_string",
    value_column_counter: str = "value_integer"
) -> pd.DataFrame

Parts produced per operator.

Parameters:

Name Type Description Default
operator_uuid str

UUID for operator/team identifier signal.

required
counter_uuid str

UUID for production counter signal.

required
value_column_operator str

Column containing operator names.

'value_string'
value_column_counter str

Column containing counter values.

'value_integer'

Returns:

Type Description
DataFrame

DataFrame with columns:

DataFrame
  • operator, total_produced, shifts_worked, avg_per_shift

operator_efficiency ¤

operator_efficiency(
    operator_uuid: str,
    counter_uuid: str,
    target_per_shift: int,
    *,
    value_column_operator: str = "value_string",
    value_column_counter: str = "value_integer"
) -> pd.DataFrame

Operator efficiency vs a per-shift target.

Parameters:

Name Type Description Default
operator_uuid str

UUID for operator/team identifier signal.

required
counter_uuid str

UUID for production counter signal.

required
target_per_shift int

Target production quantity per shift.

required
value_column_operator str

Column containing operator names.

'value_string'
value_column_counter str

Column containing counter values.

'value_integer'

Returns:

Type Description
DataFrame

DataFrame with columns:

DataFrame
  • operator, total_produced, target, efficiency_pct

quality_by_operator ¤

quality_by_operator(
    operator_uuid: str,
    ok_uuid: str,
    nok_uuid: str,
    *,
    value_column_operator: str = "value_string",
    value_column_counter: str = "value_integer"
) -> pd.DataFrame

Quality metrics (First Pass Yield) per operator.

Parameters:

Name Type Description Default
operator_uuid str

UUID for operator/team identifier signal.

required
ok_uuid str

UUID for good parts counter.

required
nok_uuid str

UUID for bad parts counter.

required
value_column_operator str

Column containing operator names.

'value_string'
value_column_counter str

Column containing counter values.

'value_integer'

Returns:

Type Description
DataFrame

DataFrame with columns:

DataFrame
  • operator, ok_count, nok_count, first_pass_yield_pct

operator_comparison ¤

operator_comparison(
    operator_uuid: str,
    counter_uuid: str,
    *,
    value_column_operator: str = "value_string",
    value_column_counter: str = "value_integer"
) -> pd.DataFrame

Ranked operator performance comparison.

Parameters:

Name Type Description Default
operator_uuid str

UUID for operator/team identifier signal.

required
counter_uuid str

UUID for production counter signal.

required
value_column_operator str

Column containing operator names.

'value_string'
value_column_counter str

Column containing counter values.

'value_integer'

Returns:

Type Description
DataFrame

DataFrame with columns:

DataFrame
  • operator, total_produced, rank, pct_of_best