

def inverse_transform(self, X, y=None):
    'Transform data back to its original space.\n\n        In other words, return an input X_original whose transform would be X.\n\n        Parameters\n        ----------\n        X : array-like, shape (n_samples, n_components)\n            New data, where n_samples is the number of samples\n            and n_components is the number of components.\n\n        Returns\n        -------\n        X_original array-like, shape (n_samples, n_features)\n\n        Notes\n        -----\n        If whitening is enabled, inverse_transform will compute the\n        exact inverse operation, which includes reversing whitening.\n        '
    if self.whiten:
        return (fast_dot(X, (np.sqrt(self.explained_variance_[:, np.newaxis]) * self.components_)) + self.mean_)
    else:
        return (fast_dot(X, self.components_) + self.mean_)

dataset/ETHPy150Open scikit-learn/scikit-learn/sklearn/decomposition/base.py _BasePCA.inverse_transform/original