My favorites | Sign in
Project Home Downloads Wiki Issues
Project Information
Members
Featured
Downloads
Links

Please feel free to email the authors if you need help on using PyEEG in your research.

About the game

  • PyEEG is a Python module (i.e., function library) to extract EEG (Electroencephalography) features. More functions are being added.
  • It contains functions to build data for feature extraction, such as building an embedding sequence from a given time series. It is also able to export features into svmlight format for calling machine learning tools. Check non-feature extraction functions below.
  • In PyEEG, EEG series are represented in Python list or numpy array data structure. Therefore, PyEEG can not read or load files, such as EDF+ or even ASCII file. You can use other open source tools, (e.g.,EDFBrowser, BioSig, EEGLab), to load and convert files before feeding EEG data into PyEEG.
  • This library is initially used in epileptic EEG recognition against normal EEG. But it can be extended to other neurological disease analysis based on same features.
  • Disclaimer: PyEEG may NOT be used in safety-critical applications, such as life-support medical systems. The author is NOT responsible for any consequences. For research and educational purpose only.

Download, Use and Help

  1. Download pyeeg.py. Check "Download" tab with the highest version number.
  2. Save it as "pyeeg.py" under current Python search path.
    • The easiest way is to put it under you work directory, where you run your code (the code that calls functions in pyeeg)
    • You can set the system environment variable PYTHONPATH to the directory you save pyeeg.py
  3. Import pyeeg in your Python code as you import other modules. The module name is pyeeg.
  4. Please cite PyEEG if you use it in your research and publication:
  5. Forrest S. Bao, Xin Liu and Christina Zhang, "PyEEG: An Open Source Python Module for EEG/MEG Feature Extraction," Computational Intelligence and Neuroscience, March, 2011
  6. If your project is using PyEEG, please do let me know! I will be happy to help you use PyEEG better for your project.
  7. Mailing list: http://lists.sourceforge.net/mailman/listinfo/pyeeg-user (Subscription needed to post).
  8. If you are sure about a bug, please report in Issues tab.

Documentations

  • Docstrings in the source code. Each function has very detailed comments following Numpy documentation guideline in reST language.
  • Reference guide generated from docstrings. For PDF version, check "Download" tab. For HTML version, check here: http://pyeeg.sf.net
  • A short tutorial is given in Section 4 of our paper

Contributing to PyEEG

  1. Functions: Your code is more than welcome to be added into PyEEG. Please email me and I will add you as a committer.
  2. Documentation: Don't hesitate to email me if you wanna help me polish the wiki or reference guide.
  3. Feature requesting: Please feel free to buzz me for new features you wanna see in PyEEG.

Projects using PyEEG

Let me know your exciting project using PyEEG!

Functions

For function details, please refer to the documentations.

Features

Currently, these functions have been implemented (EEG signals are time series of Python list or numpy array type):

  • bin_power(), Power Spectral Density (PSD), spectrum power in a set of frequency bins, and, Relative Intensity Ratio (RIR), PSD normalized by total power in all frequency bins
  • pfd(), Petrosian Fractal Dimension (PFD)
  • hfd(), Higuchi Fractal Dimension (HFD)
  • hjorth(), Hjorth mobility and complexity
  • spectral_entropy(), spectral entropy, the entropy of RIRs
  • svd_entropy(), Singular Value Decomposition (SVD) entropy
  • fisher_info(), Fisher Information, the entropy of SVD values, i.e., SVD spectrum
  • ap_entropy(), Approximate Entropy (ApEn)
  • samp_entropy(), Sample Entropy (SampEn)
  • dfa(), Detrended Fluctuation Analysis (DFA)
  • hurst(), Hurst Exponent (Hurst)

Non-features

These functions are built to compute some features or for your convenience to build more functions

  • pyeeg.first_order_diff(), first order differential sequence of input series

Coming

  • Singular Value Fraction (SVF)
  • Permutation Entropy
  • Information Based Similarity (IBS)

pyeeg does not extract these features

I do not want to reinvent the wheel. There are many features used in EEG pattern recognition and signal processing which are basic scientific parameters. So please take advantage of scipy standard libraries. I list some functions you can use:

Powered by Google Project Hosting