ValueError: Found array with dim 3. Estimator expected <= 2.
Any help would be highly appreciated.
Thanks With Warm Regards,
MD. KHORSHED ALAM (Shishir)
Graduate Research Assistant (GRA)
Center of Intelligent Signal and Imaging Research (CISIR)
Department of Electrical and Electronic Engineering
Universiti Teknologi PETRONAS
Bandar Seri Iskandar
32610 Tronoh
Perak Darul Ridzuan
Malaysia
epochs = mne.Epochs(eeg_channels, events=events, event_id=event_id, tmin=-0.2, tmax=0.5, proj=True, baseline=(None, 0), preload=True)
n_components = 19 # Number of components to keep (should be less then the number of channels)
X = epochs.get_data()
pca = UnsupervisedSpatialFilter(PCA(n_components, whiten=True), average=False)
pca_data = pca.fit_transform(X)
best,
Marijn.
the PCA expects a 2-dimensional data matrix: channels x
Dear MNE Group,
I am currently working on MNE for Neuro-feedback application. I would like to use PCA for dimensional EEG data reduction.
ValueError: Found array with dim 3. Estimator expected <= 2.
Any help would be highly appreciated.
Thanks With Warm Regards,
MD. KHORSHED ALAM (Shishir)
Graduate Research Assistant (GRA)
Center of Intelligent Signal and Imaging Research (CISIR)
Department of Electrical and Electronic Engineering
Universiti Teknologi PETRONAS
Bandar Seri Iskandar
32610 Tronoh
Perak Darul Ridzuan
Malaysia
_______________________________________________
Mne_analysis mailing list
Mne_analysis at nmr.mgh.harvard.edu Mne_analysis Info Page
The information in this e-mail is intended only for the person to whom it is
addressed. If you believe this e-mail was sent to you in error and the e-mail
contains patient information, please contact the Partners Compliance HelpLine at MyComplianceReport.com: Compliance and Ethics Reporting . If the e-mail was sent to you in error
but does not contain patient information, please contact the sender and properly
dispose of the e-mail.
Just quickly looking over the code, it looks as though you are overwriting
`pca`. Within MNE, we have the `UnsupervisedSpatialFilter` that takes an
estimator `PCA` as an argument. It can then fit/fit_transform your data
`epochs.get_data()` which has the dimensions (n_epochs, channels, time).
It seems you did create this with the first `pca` step. However, it seems
you then included an erroneous second step, which overwrites `pca` with
sklearn PCA object, which expects the data in the shape (n_samples,
n_features).
Try removing that second PCA step and see if it works.