'Aux method.'

def _fit_epochs(self, epochs, picks, decim, verbose):

    if (self.current_fit != 'unfitted'):
        self._reset()
    if (picks is None):
        picks = _pick_data_channels(epochs.info, exclude='bads', with_ref_meg=False)
    logger.info(('Fitting    ICA    to    data    using    %i    channels.    \nPlease    be    patient,    this    may    take    some    time' % len(picks)))
    self.info = pick_info(epochs.info, picks)
    if self.info['comps']:
        self.info['comps'] = []
    self.ch_names = self.info['ch_names']
    if (self.max_pca_components is None):
        self.max_pca_components = len(picks)
        logger.info('Inferring    max_pca_components    from    picks.')
    data = epochs.get_data()[:, picks]
    if (decim is not None):
        data = data[:, :, ::decim]
    self.n_samples_ = np.prod(data[:, 0, :].shape)
    (data, self._pre_whitener) = self._pre_whiten(np.hstack(data), epochs.info, picks)
    self._fit(data, self.max_pca_components, 'epochs')
    return self
