Skip to content


observation_set: Union[ObservationTable, DataFrame]
) -> DataFrame


Materializes a Feature object using a small observation set of up to 50 rows. Unlike compute_historical_features, this method does not store partial aggregations (tiles) to speed up future computation. Instead, it computes the feature values on the fly, and should be used only for small observation sets for debugging or prototyping unsaved features.

The small observation set should combine historical points-in-time and key values of the primary entity from the feature. Associated serving entities can also be utilized.


  • observation_set: Union[ObservationTable, DataFrame]
    Observation set DataFrame which combines historical points-in-time and values of the feature primary entity or its descendant (serving entities). The column containing the point-in-time values should be named
    POINT_IN_TIME, while the columns representing entity values should be named using accepted serving names for the entity.


  • DataFrame
    Materialized feature values. The returned DataFrame will have the same number of rows, and include all columns from the observation set.

Note: POINT_IN_TIME values will be converted to UTC time.


Preview feature with a small observation set.

>>> catalog.get_feature("InvoiceCount_60days").preview(
...     observation_set=pd.DataFrame({
...         "POINT_IN_TIME": ["2022-06-01 00:00:00", "2022-06-02 00:00:00"],
...             "a2828c3b-036c-4e2e-9bd6-30c9ee9a20e3",
...             "ac479f28-e0ff-41a4-8e60-8678e670e80b",
...         ],
...     })
... )
  POINT_IN_TIME                   GROCERYCUSTOMERGUID  InvoiceCount_60days
0    2022-06-01  a2828c3b-036c-4e2e-9bd6-30c9ee9a20e3                 10.0
1    2022-06-02  ac479f28-e0ff-41a4-8e60-8678e670e80b                  6.0

See Also