parameters: (self, X, copy=True)
return_statement: return np.dot(X, self.components_.T)
docstring: Recover the sources from X (apply the unmixing matrix).
  
          Parameters
          ----------
          X : array-like, shape (n_samples, n_features)
              Data to transform, where n_samples is the number of samples
              and n_features is the number of features.
  
          copy : bool (optional)
              If False, data passed to fit are overwritten. Defaults to True.
  
          Returns
          -------
          X_new : array-like, shape (n_samples, n_components)
docstring_summary: Recover the sources from X (apply the unmixing matrix).
docstring_tokens: Recover the sources from X ( apply the unmixing matrix ) .
function: def transform(self, X, copy=True):
          """Recover the sources from X (apply the unmixing matrix).
  
          Parameters
          ----------
          X : array-like, shape (n_samples, n_features)
              Data to transform, where n_samples is the number of samples
              and n_features is the number of features.
  
          copy : bool (optional)
              If False, data passed to fit are overwritten. Defaults to True.
  
          Returns
          -------
          X_new : array-like, shape (n_samples, n_components)
          """
          check_is_fitted(self)
  
          X = check_array(X, copy=copy, dtype=FLOAT_DTYPES)
          if self.whiten:
              X -= self.mean_
  
          return np.dot(X, self.components_.T)
function_tokens: def transform ( self , X , copy = True ) : check_is_fitted ( self ) X = check_array ( X , copy = copy , dtype = FLOAT_DTYPES ) if self . whiten : X -= self . mean_ return np . dot ( X , self . components_ . T )