class_docstr: Removes degenerate (constant) columns.
  
  Parameters
  ----------
  drop_degenerate : `bool`, default False
      Whether to drop degenerate columns.
  
  Attributes
  ----------
  drop_cols : `list` [`str`] or None
      Degenerate columns to drop
  keep_cols : `list` [`str`] or None
      Columns to keep
class_docstr_tok: ["Removes","degenerate","(","constant",")","columns",".","Parameters","--","--","--","--","--","drop_degenerate",":","`","bool","`",",","default","False","Whether","to","drop","degenerate","columns",".","Attributes","--","--","--","--","--","drop_cols",":","`","list","`","[","`","str","`","]","or","None","Degenerate","columns","to","drop","keep_cols",":","`","list","`","[","`","str","`","]","or","None","Columns","to","keep"]
docstr: Normalizes data using the specified scaling method.
  
  Parameters
  ----------
  X : `pandas.DataFrame`
      Data to transform. e.g. each column is a timeseries.
      Columns are expected to be numeric.
  
  Returns
  -------
  X_subset : `pandas.DataFrame`
      Selected columns of X. Keeps columns that were not
      degenerate on the training data.
docstr_tok: ["Normalizes","data","using","the","specified","scaling","method",".","Parameters","--","--","--","--","--","X",":","`","pandas.DataFrame","`","Data","to","transform",".","e.g",".","each","column","is","a","timeseries",".","Columns","are","expected","to","be","numeric",".","Returns","--","--","--","-","X_subset",":","`","pandas.DataFrame","`","Selected","columns","of","X",".","Keeps","columns","that","were","not","degenerate","on","the","training","data","."]
code: def transform(self, X):
      """Normalizes data using the specified scaling method.
  
      Parameters
      ----------
      X : `pandas.DataFrame`
          Data to transform. e.g. each column is a timeseries.
          Columns are expected to be numeric.
  
      Returns
      -------
      X_subset : `pandas.DataFrame`
          Selected columns of X. Keeps columns that were not
          degenerate on the training data.
      """
      if self.keep_cols is None:
          raise NotFittedError(
              "This instance is not fitted yet. Call 'fit' with appropriate arguments "
              "before calling 'transform'."
          )
      return X[self.keep_cols]
  
file_path: greykite/greykite/sklearn/transform/drop_degenerate_transformer.py
imports: import warnings
  import pandas
  from sklearn.base import BaseEstimator
  from sklearn.base import TransformerMixin
  from sklearn.exceptions import NotFittedError
label_desc: Use image node_id 3 for calling the DropDegenerateTransformer obj's underlying member method code with example usage: obj.transform(X) and returns: X