Average label uniqueness

q.label.average_uniqueness averages inverse concurrency over each event lifetime. An isolated label has uniqueness 1; overlapping labels receive smaller values.

Use uniqueness as a diagnostic, a decay input, or one component of explicit training weights.

import pandas as pd

import qrt as q

observations = pd.date_range("2026-01-01", periods=7, name="datetime")
end_times = pd.Series(
    observations[[3, 5, 6]],
    index=observations[[0, 1, 4]].rename("event_time"),
)
uniqueness = q.label.average_uniqueness(observations, end_times)
pd.DataFrame({"end_time": end_times, "average_uniqueness": uniqueness})
end_time average_uniqueness
event_time
2026-01-01 2026-01-04 0.625000
2026-01-02 2026-01-06 0.500000
2026-01-05 2026-01-07 0.666667

Precomputed concurrency can be supplied when several analyses share the same intervals. It may be zero outside all event lifetimes but must be positive inside every event.

Back to top