def __init__(self, regressor, max_components=None, n_components=1, whiten=True, n_jobs=1):
        """
        Class for performing supervised principal component regression. This is useful for cases where the number of
        inputs (features) is greater than the number of data points.

        @param regressor: The object that will perform the regression. The following members must be defined for this
            object:

            regressor.fit(X, y) : Fits the regression model y = f(X).
            regressor.predict(X) : Compute the prediction y = f(X).
            regressor.coef_score_ : The score of each parameter, used for ranking the most important features when
                                    computing the reduced feature space. In general this will be the absolute value of
                                    the coefficient value divided by its standard error. Note that this should *not*
                                    include the intercept.

        @param max_components: Maximum number of components to search over. The default is p.
        @param n_components: The number of reduced data matrix PCA components to use in the regression.
        @param whiten: Remove differences in variance among the components, i.e., principal components will have unit
            variance
        @param n_jobs: The number of threads to use for parallel processing. If n_jobs = -1 then use maximum number
            available.
        """
        super(SupervisedPCA, self).__init__(regressor, max_components, n_components, whiten)
        if n_jobs < 0:
            n_jobs = multiprocessing.cpu_count()
        self.n_jobs = n_jobs
dataset/ETHPy150Open brandonckelly/bck_stats/bck_stats/super_pca.py/SupervisedPCA.__init__/original