Cluster channels to reduce the number of columns from 110 to 10

**After converting raw EEG signals into epochs, I converted epochs into the panda DataFrame. The data frame consists of 110 columns. These columns are the channel names corresponding to the standard montage GSN-HydroCel-129.

For optimization purpose, I want to reduce the columns from 110 to 10. How can I achieve that?
Any help will be highly appreciated. Thank you!
**

  • MNE-Python version: 0.19.2
  • operating system: Google Colab
epochs = mne.Epochs(raw, evs, event_id, tmin, tmax, proj=True,
                    picks=('eeg'), baseline=(None, 0.), preload=True)
epochs.pick_types(eeg=True, exclude='bads')

df = epochs.to_data_frame(scalings=dict(eeg=1, mag=1, grad=1))
print(df)

PS: The picture does not capture all the columns.

Try standard dimensionality reduction tools like PCA or ICA? It’s hard to offer any concrete advice without knowing what exactly you’re trying to optimize / what scientific question you’re trying to answer.