code: def fit(self, data):
          
  
          _raise_error_if_not_sframe(data, "data")
  
          fitted_state = {}
          feature_columns = _internal_utils.get_column_names(data, self._exclude, self._features)
  
          if not feature_columns:
              raise RuntimeError("No valid feature columns specified in transformation.")
  
          fitted_state['features'] = feature_columns
          fitted_state['fitted'] = True
  
          self.__proxy__.update(fitted_state)
  
          return self
docs: Fits the transformer using the given data.