code: def fit(self, X, y=None, **kwargs):
          
          logger.info("Starting fit")
          with _timer("fit", _logger=logger):
              result = self.estimator.fit(X, y, **kwargs)
  
          # Copy over learned attributes
          copy_learned_attributes(result, self)
          copy_learned_attributes(result, self.estimator)
          return self
docs: Fit the underlying estimator.
  
          Parameters
          ----------
          X, y : array-like
          **kwargs
              Additional fit-kwargs for the underlying estimator.
  
          Returns
          -------
          self : object