Enhancing oscillations in intracranial electrophysiological recordings with data-driven spatial filters
This repository provides analysis code to compute data-driven spatial filters using spatio-spectral decomposition in intracranial electrophysiological data. The repository code recreates results and figures from the following manuscript:
Schaworonkow N & Voytek B: Enhancing oscillations in intracranial electrophysiological recordings with data-driven spatial filters PLoS Computional Biology (2021). doi:10.1371/journal.pcbi.1009298.
The results are based on following available openly available data set: A library of human electrocorticographic data and analyses. which is described in detail in following article:
Miller, K.J. A library of human electrocorticographic data and analyses. Nature Human Behavior 3, 1225–1235 (2019). doi:10.1038/s41562-019-0678-3.
To reproduce the figures from the spatial filters manuscript, the data set should be downloaded and placed in the folder data
.
The provided python3 scripts are using scipy
and numpy
for general computation, pandas
for saving intermediate results to csv-files. matplotlib
for visualization. For EEG-related analysis, the mne
package is used. For computation of aperiodic exponents: fooof
and for computation of waveform features: bycycle
. Specifically used versions can be seen in the requirements.txt
.
To reproduce the figures from the command line, navigate into the code
folder and execute make all
. This will run through the preprocessing steps, the computation of spatial filters, the analysis of peak frequencies and the oscillatory burst analysis. The scripts can also be executed separately in the order described in the Makefile
.