Temporal Features

class temporal_features.CyclicalFeaturesEncoder(columns: str | List[str], max_values: int | List[int])[source]

Encodes cyclical features using sine and cosine transformations.

fit(X: DataFrame, y: Series | None = None) CyclicalFeaturesEncoder[source]

Fit method does nothing as no fitting is required.

Parameters:
  • X (pd.DataFrame) – Input DataFrame.

  • y (pd.Series, optional) – Target variable (ignored).

Returns:

Returns self.

Return type:

CyclicalFeaturesEncoder

transform(X: DataFrame) DataFrame[source]

Encodes cyclical features.

Parameters:

X (pd.DataFrame) – Input DataFrame.

Returns:

DataFrame with new sine and cosine encoded columns.

Return type:

pd.DataFrame

class temporal_features.DataResampler(datetime_column: str, rule: str, aggregation_methods: str | Dict[str, str] = 'sum')[source]

Resamples the DataFrame based on a given frequency and aggregation method.

fit(X: DataFrame, y: Series | None = None) DataResampler[source]

Fit method does nothing as no fitting is required.

Parameters:
  • X (pd.DataFrame) – Input DataFrame.

  • y (pd.Series, optional) – Target variable (ignored).

Returns:

Returns self.

Return type:

DataResampler

transform(X: DataFrame) DataFrame[source]

Resamples the DataFrame.

Parameters:

X (pd.DataFrame) – Input DataFrame.

Returns:

Resampled DataFrame with aggregated values.

Return type:

pd.DataFrame

class temporal_features.DatePartExtractor(column: str, parts: List[str] | None = None, prefix: str | None = None)[source]

Extracts date parts from datetime columns.

fit(X: DataFrame, y: Series | None = None) DatePartExtractor[source]

Fit method does nothing as no fitting is required.

Parameters:
  • X (pd.DataFrame) – Input DataFrame.

  • y (pd.Series, optional) – Target variable (ignored).

Returns:

Returns self.

Return type:

DatePartExtractor

transform(X: DataFrame) DataFrame[source]

Extracts specified date parts from the datetime column.

Parameters:

X (pd.DataFrame) – Input DataFrame.

Returns:

DataFrame with extracted date parts.

Return type:

pd.DataFrame

class temporal_features.DatetimeConverter(columns: str | List[str], format: str | None = None, errors: str = 'raise')[source]

Converts specified columns to datetime format.

fit(X: DataFrame, y: Series | None = None) DatetimeConverter[source]

Fit method does nothing as no fitting is required.

Parameters:
  • X (pd.DataFrame) – Input DataFrame.

  • y (pd.Series, optional) – Target variable (ignored).

Returns:

Returns self.

Return type:

DatetimeConverter

transform(X: DataFrame) DataFrame[source]

Converts specified columns to datetime.

Parameters:

X (pd.DataFrame) – Input DataFrame.

Returns:

DataFrame with specified columns converted to datetime.

Return type:

pd.DataFrame

class temporal_features.LagFeatureCreator(columns: str | List[str], lags: List[int])[source]

Creates lag features for specified columns.

fit(X: DataFrame, y: Series | None = None) LagFeatureCreator[source]

Fit method does nothing as no fitting is required.

Parameters:
  • X (pd.DataFrame) – Input DataFrame.

  • y (pd.Series, optional) – Target variable (ignored).

Returns:

Returns self.

Return type:

LagFeatureCreator

transform(X: DataFrame) DataFrame[source]

Creates lag features.

Parameters:

X (pd.DataFrame) – Input DataFrame.

Returns:

DataFrame with new lag feature columns.

Return type:

pd.DataFrame

class temporal_features.RollingFeatureCreator(columns: str | List[str], window_size: int, statistics: List[str] = ['mean'])[source]

Creates rolling statistics for specified columns.

fit(X: DataFrame, y: Series | None = None) RollingFeatureCreator[source]

Fit method does nothing as no fitting is required.

Parameters:
  • X (pd.DataFrame) – Input DataFrame.

  • y (pd.Series, optional) – Target variable (ignored).

Returns:

Returns self.

Return type:

RollingFeatureCreator

transform(X: DataFrame) DataFrame[source]

Creates rolling features.

Parameters:

X (pd.DataFrame) – Input DataFrame.

Returns:

DataFrame with new rolling feature columns.

Return type:

pd.DataFrame

class temporal_features.TimeDifferenceTransformer(column: str, new_column_name: str | None = None, periods: int = 1)[source]

Creates time difference between consecutive rows in a datetime column.

fit(X: DataFrame, y: Series | None = None) TimeDifferenceTransformer[source]

Fit method does nothing as no fitting is required.

Parameters:
  • X (pd.DataFrame) – Input DataFrame.

  • y (pd.Series, optional) – Target variable (ignored).

Returns:

Returns self.

Return type:

TimeDifferenceTransformer

transform(X: DataFrame) DataFrame[source]

Calculates time differences.

Parameters:

X (pd.DataFrame) – Input DataFrame.

Returns:

DataFrame with new time difference column.

Return type:

pd.DataFrame