'Apply dimensionality reduction to X.
X is projected on the first principal components previously extracted
from a training set.
Parameters
X : array-like, shape (n_samples, n_features)
New data, where n_samples is the number of samples
and n_features is the number of features.
Returns
X_new : array-like, shape (n_samples, n_components)
Examples
>>> import numpy as np
>>> from sklearn.decomposition import IncrementalPCA
>>> X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])
>>> ipca = IncrementalPCA(n_components=2, batch_size=3)
>>> ipca.fit(X)
IncrementalPCA(batch_size=3, copy=True, n_components=2, whiten=False)
>>> ipca.transform(X) # doctest: +SKIP'

def transform(self, X):

    check_is_fitted(self, ['mean_', 'components_'], all_or_any=all)
    X = check_array(X)
    if (self.mean_ is not None):
        X = (X - self.mean_)
    X_transformed = np.dot(X, self.components_.T)
    if self.whiten:
        X_transformed /= np.sqrt(self.explained_variance_)
    return X_transformed
