code: def transform(self, X, override_return_df=False):
          
  
          if self._dim is None:
              raise ValueError('Must train encoder before it can be used to transform data.')
  
          # first check the type
          X = util.convert_input(X)
  
          # then make sure that it is the right size
          if X.shape[1] != self._dim:
              raise ValueError('Unexpected input dimension %d, expected %d' % (X.shape[1], self._dim, ))
  
          if not self.cols:
              return X
  
          X = self.hashing_trick(X, hashing_method=self.hash_method, N=self.n_components, cols=self.cols)
  
          if self.drop_invariant:
              for col in self.drop_cols:
                  X.drop(col, 1, inplace=True)
  
          if self.return_df or override_return_df:
              return X
          else:
              return X.values
docs: Perform the transformation to new categorical data.
  
          Parameters
          ----------
  
          X : array-like, shape = [n_samples, n_features]
  
          Returns
          -------
  
          p : array, shape = [n_samples, n_numeric + N]
              Transformed values with encoding applied.