Skip to content

featurebyte.Feature.cd.get_relative_frequency

get_relative_frequency(
key: Union[bool, int, float, str, Feature, RequestColumn]
) -> Feature

Description

Computes the relative frequency of a specific key in the Cross Aggregate feature. The key may either be a lookup feature or a scalar value. If the key does not exist, the relative frequency will be 0.

Parameters

  • key: Union[bool, int, float, str, Feature, RequestColumn]
    Key to lookup the value for.

Returns

  • Feature
    A new Feature object.

Examples

Create a new feature by computing the relative frequency for a particular key:

>>> counts = catalog.get_feature("CustomerProductGroupCounts_7d")
>>> new_feature = counts.cd.get_relative_frequency("Chips et Tortillas")
>>> new_feature.name = "Chips et Tortillas Relative Frequency"
Preview the features:

>>> features = fb.FeatureGroup([counts, new_feature])
>>> df = features.preview(
...     pd.DataFrame([
...         {
...             "POINT_IN_TIME": "2022-04-15 10:00:00",
...             "GROCERYCUSTOMERGUID": "2f4c1578-29d6-44b7-83da-7c5bfb981fa0",
...         }
...     ])
... )

Dictionary feature:

>>> df["CustomerProductGroupCounts_7d"].iloc[0]
{'Chips et Tortillas': 1, 'Colas, Thés glacés et Sodas': 3, 'Crèmes et Chantilly': 1, 'Pains': 1, 'Œufs': 1}

New feature:

>>> df["Chips et Tortillas Relative Frequency"].iloc[0]
0.14285714285714302