Skip to content

Python module for loading EEG data recorded with Bittium NeurOne (formerly MegaEMG)

License

Notifications You must be signed in to change notification settings

heilerich/neurone_loader

Repository files navigation

NeuroneLoader

Build Status Coverage Status Documentation Status License PyPi Package Supported Python Versions JOSS status

NeuroneLoader is a python module for loading neurophysiological data recorded with Bittium NeurOne (formerly MegaEMG). It therefore allows using the data in pure python processing workflows using the python scientifc software stack (e.g. numpy) without the need of prior conversion using other (proprietary) software (e.g. MATLAB). It can also export it to container objects used by the popular python-mne framework.

Props to Andreas Henelius at Finnish Institute of Occupational Health for figuring out how to read the NeurOne binary format in pure python as part of his export2hdf project.

Installation

pip install neurone_loader

If you want to export to python-mne you must also install MNE and all it's dependencies.

pip install mne

Quick start

>>> from neurone_loader import Recording
>>> rec = Recording(path_to_recording_folder)
>>> rec.event_codes
array([  0,   1,  12,  13,  99, 128], dtype=int32)

Please note that because raw EEG recordings can be quite large this package is very memory aware. Most data will be loaded from disk lazily, i.e. the moment you're actually accessing it, and redundant data will be removed from memory as soon as it has been copied - unless you specify otherwise. Be advised that working with big recordings might still require a lot of memory.

I recommend looking at the docstrings before executing anything and maybe having a look at Concepts section in the Documentation before you start working with this package.

Contributing

If you encounter any problem feel free to open a issue on GitHub. If you found a bug and want to supply a fix or if you want to contribute a new feature open a pull request. Just make sure that your code is not breaking any tests and you also supply tests for your code.

Testing

To run the tests you must first get the test data and then you can run the test with the following commands. Please run them in the repository directory, not in the test subdirectory.

To get the test data (~2.8GB) you need to install wget. Then you can download the data by running

bash test/get_test_data.sh

Then you can run the tests with

python -m unittest discover -s test -t .

About

Python module for loading EEG data recorded with Bittium NeurOne (formerly MegaEMG)

Resources

License

Stars

Watchers

Forks

Packages

No packages published