_RankingMetric

class rectools.metrics.ranking._RankingMetric(k: int)[source]

Bases: MetricAtK

Simple classification metric base class.

Warning: This class should not be used directly. Use derived classes instead.

Parameters

k (int) – Number of items at the top of recommendations list that will be used to calculate metric.

Inherited-members

Methods

calc(reco, interactions)

Calculate metric value.

calc_per_user(reco, interactions)

Calculate metric values for all users.

Attributes

calc(reco: DataFrame, interactions: DataFrame) float[source]

Calculate metric value.

Parameters
  • reco (pd.DataFrame) – Recommendations table with columns Columns.User, Columns.Item, Columns.Rank.

  • interactions (pd.DataFrame) – Interactions table with columns Columns.User, Columns.Item.

Returns

Value of metric (average between users).

Return type

float

calc_per_user(reco: DataFrame, interactions: DataFrame) Series[source]

Calculate metric values for all users.

Parameters
  • reco (pd.DataFrame) – Recommendations table with columns Columns.User, Columns.Item, Columns.Rank.

  • interactions (pd.DataFrame) – Interactions table with columns Columns.User, Columns.Item.

Returns

Values of metric (index - user id, values - metric value for every user).

Return type

pd.Series