class_docstr: Calculates time series features (e.g. year, month, hour etc.) of the input time series
  
  Parameters
  ----------
  time_col : string, default=TIME_COL
      issues warning if fraction of nulls is above this value
  
  Attributes
  ----------
  origin_for_time_vars : float (e.g. 2019.2)
      sets default origin so that "ct1" feature from `build_time_features_df` starts at 0 on start date of fitted data
class_docstr_tok: ["Calculates","time","series","features","(","e.g",".","year",",","month",",","hour","etc",".",")","of","the","input","time","series","Parameters","--","--","--","--","--","time_col",":","string",",","default=TIME_COL","issues","warning","if","fraction","of","nulls","is","above","this","value","Attributes","--","--","--","--","--","origin_for_time_vars",":","float","(","e.g",".","2019.2",")","sets","default","origin","so","that","``","ct1","''","feature","from","`","build_time_features_df","`","starts","at","0","on","start","date","of","fitted","data"]
docstr: Calculates time series features of the input time series
  
  Parameters
  ----------
  X : pd.DataFrame
  
  Returns
  -------
  A copy of the data frame with original time points and calculated features
docstr_tok: ["Calculates","time","series","features","of","the","input","time","series","Parameters","--","--","--","--","--","X",":","pd.DataFrame","Returns","--","--","--","-","A","copy","of","the","data","frame","with","original","time","points","and","calculated","features"]
code: def transform(self, X):
      """Calculates time series features of the input time series
  
      Parameters
      ----------
      X : pd.DataFrame
  
      Returns
      -------
      A copy of the data frame with original time points and calculated features
      """
      if self.origin_for_time_vars is None:
          raise NotFittedError(
              "This instance is not fitted yet. Call 'fit' with appropriate arguments "
              "before calling 'transform'."
          )
      assert isinstance(X, pd.DataFrame)
      dt = X[self.time_col]
      features_ts = build_time_features_df(
          dt, conti_year_origin=self.origin_for_time_vars
      )
      output = pd.concat([dt, features_ts], axis=1)
      return output
  
file_path: greykite/greykite/sklearn/transform/build_timeseries_features_transformer.py
imports: import pandas
  from sklearn.base import BaseEstimator
  from sklearn.base import TransformerMixin
  from sklearn.exceptions import NotFittedError
  from greykite.common.constants import TIME_COL
  from greykite.common.features.timeseries_features import build_time_features_df
  from greykite.common.features.timeseries_features import convert_date_to_continuous_time
label_desc: Use image node_id 3 for calling the BuildTimeseriesFeaturesTransformer obj's underlying member method code with example usage: obj.transform(X) and returns: output