diff --git a/doc/whats_new/v0.22.rst b/doc/whats_new/v0.22.rst index b7f9a356d5d4a..de69784fcd176 100644 --- a/doc/whats_new/v0.22.rst +++ b/doc/whats_new/v0.22.rst @@ -17,8 +17,8 @@ parameters, may produce different models from the previous version. This often occurs due to changes in the modelling logic (bug fixes or enhancements), or in random sampling procedures. -.. - TO FILL IN AS WE GO +- :class:`decomposition.SparsePCA` where `normalize_components` has no effect + due to deprecation. Details are listed in the changelog below. diff --git a/sklearn/decomposition/sparse_pca.py b/sklearn/decomposition/sparse_pca.py index 6c56f5a8a0b4e..238f6cc4ef403 100644 --- a/sklearn/decomposition/sparse_pca.py +++ b/sklearn/decomposition/sparse_pca.py @@ -224,18 +224,11 @@ def transform(self, X): check_is_fitted(self, 'components_') X = check_array(X) - - if self.normalize_components: - X = X - self.mean_ + X = X - self.mean_ U = ridge_regression(self.components_.T, X.T, self.ridge_alpha, solver='cholesky') - if not self.normalize_components: - s = np.sqrt((U ** 2).sum(axis=0)) - s[s == 0] = 1 - U /= s - return U