EEGrunt: A Collection Python EEG (+ECG) Analysis Utilities
Working with EEG (electroencephalography) data is hard, and this little library aims to make it easier. EEGrunt consists of a collection of functions for reading EEG data from CSV files, converting and filtering it in various ways, and finally generating pretty and informative visualizations.
Update: We’ve added functions to plot heart rate and heart rate variability from recorded OpenBCI ECG (electrocardiography) data. You can test these out with the
analyze_ecg_data.py demo scripts. We’ve posted a new tutorial on our blog to get you started: EEGrunt update: Analyze heart rate and HRV with Python
EEGrunt is compatible with data from OpenBCI and Muse.
EEGrunt has bandpass, notch, and highpass filters for cleaning up powerline interference, OpenBCI's DC offset, and zeroing in on the frequency band you want to analyze.
EEGrunt makes it easy to generate signal plots, amplitude trend graphs, spectrograms, and FFT (fast-fouier transform) graphs, etc.
- Download or clone the repo:
git clone https://github.com/curiositry/EEGrunt
sudo bash install_linux_dependencies.sh(tell me if this doesn’t work)
- Take a look in
analyze_data.pyand edit at will, or create your own script using
EEGrunt.py. Make sure to set the required variables — device, path, and filename.
- Run it:
- Read the announcement post for the official tutorial!
- [Optional] Interested in analyzing ECG data with EEGrunt? Take a look at the new tutorial.