Skip to main content

A Python Toolbox for Statistics and Signal Processing (EEG, EDA, ECG, EMG...).

Project description

<p align="center"><a href=http://neurokit.readthedocs.io/><img src="https://github.com/neuropsychology/NeuroKit.py/blob/master/docs/img/neurokit.png" width="400" align="center" alt="neurokit python eeg biosignals meg electrophysiology logo"></a></p>

<h2 align="center">Neuroscience made easy!</h2>


# NeuroKit.py
[![pypi](https://img.shields.io/pypi/pyversions/neurokit.svg)](https://pypi.python.org/pypi/neurokit) [![pypi](https://img.shields.io/pypi/v/neurokit.svg)](https://pypi.python.org/pypi/neurokit) [![travis](https://travis-ci.org/neuropsychology/NeuroKit.py.svg?branch=master)](https://travis-ci.org/neuropsychology/NeuroKit.py) [![codecov](https://codecov.io/gh/neuropsychology/NeuroKit.py/branch/master/graph/badge.svg)](https://codecov.io/gh/neuropsychology/NeuroKit.py) [![Dependency Status](https://dependencyci.com/github/neuropsychology/NeuroKit.py/badge)](https://dependencyci.com/github/neuropsychology/NeuroKit.py) [![License](https://img.shields.io/pypi/l/neurokit.svg)](https://github.com/neuropsychology/NeuroKit.py/blob/master/LICENSE) [![Build status](https://ci.appveyor.com/api/projects/status/9w4qw55143xu1gei?svg=true)](https://ci.appveyor.com/project/DominiqueMakowski/neurokit-py)

A Python Toolbox for Statistics and Neurophysiological Signal Processing (EEG, EDA, ECG, EMG...).



|Name|NeuroKit|
|----------------|---|
|Documentation|[![Documentation Status](https://readthedocs.org/projects/neurokit/badge/?version=latest)](http://neurokit.readthedocs.io/en/latest/?badge=latest)|
|Discussion|[![Join the chat at https://gitter.im/NeuroKit-py/Lobby](https://img.shields.io/gitter/room/neuropsychology/NeuroKit.py.js.svg)](https://gitter.im/NeuroKit-py/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)|
|Questions|[![](https://img.shields.io/badge/issue-create-purple.svg?colorB=FF9800)](https://github.com/neuropsychology/NeuroKit.py/issues)|
|Authors|[![](https://img.shields.io/badge/CV-D._Makowski-purple.svg?colorB=9C27B0)](https://dominiquemakowski.github.io/)|

---


## Installation

Run the following:

```bash
pip install https://github.com/neuropsychology/NeuroKit.py/zipball/master
```

Not working? [Check this out](http://neurokit.readthedocs.io/en/latest/tutorials/Python.html)!


## Contribute
- You need some help? You found a bug? You would like to request a new feature?
Just open an [issue](https://github.com/neuropsychology/NeuroKit.py/issues) :relaxed:
- Want to add a feature? Correct a bug? You're more than welcome to contribute!
Check [this page](https://github.com/neuropsychology/NeuroKit.py/blob/master/CONTRIBUTING.md) to see how to submit your changes on github.

## Description

This package provides a high level integration of complex statistical routines for researchers and clinicians with not much experience in programming, statistics or signal theory.

Main features:

- **M/EEG**
- **[`read_eeg()`](http://neurokit.readthedocs.io/en/latest/documentation.html#read-eeg)**: Read and convert many EEG and MEG files to an [`mne.io.Raw`](http://martinos.org/mne/stable/generated/mne.io.Raw.html#mne.io.Raw) object
- Preprocessing: Under development
- ERP: Under development
- Time/Frequency: Under development
- Microstates: Under development
- **[Biosignals](http://neurokit.readthedocs.io/en/latest/tutorials/Bio.html)**
- **[`read_acqknowledge()`](http://neurokit.readthedocs.io/en/latest/documentation.html#read-acqknowledge)**: Load and convert Biopac:copyright:'s AcqKnowledge files to a dataframe
- **[`ecg_process()`](http://neurokit.readthedocs.io/en/latest/documentation.html#ecg-process)**: Extract ECG features
- *Heart Rate*
- *Heart rate variability (HRV) - time, frequency and nonlinear domains*
- *Cardiac Cycles - R peaks, RR intervals, P, Q, T Waves, ...*
- *Cardiac Phase (systole/diastole)*
- *Signal quality evaluation*
- *Respiratory sinus arrhythmia (RSA) - P2T method*
- *Complexity (multiscale entropy, fractal dimensions, ...)*
- **[`rsp_process()`](http://neurokit.readthedocs.io/en/latest/documentation.html#ecg-process)**: Extract Respiratory features
- *Respiratory rate and variability*
- *Respiratory phase (inspiration/expiration)*
- *Respiratory cycles characteristics (onsets, length, ...)*
- **[`eda_process()`](http://neurokit.readthedocs.io/en/latest/documentation.html#eda-process)**: Extract Electrodermal Activity (EDA)
- *Phasic component using the new cvxEDA algorithm ([Greco, 2016](https://www.ncbi.nlm.nih.gov/pubmed/26336110))*
- *Skin Conductance Responses (SCR) onsets, peaks, amplitudes, latency, rise time, ...*
- **[`emg_process()`](http://neurokit.readthedocs.io/en/latest/documentation.html#emg-process)**: Extract EMG features
- *Pulse onsets*
- **Signal**
- **[`complexity()`](http://neurokit.readthedocs.io/en/latest/documentation.html#complexity)**: Extract complexity/chaos indices, such as values of entropy (Shannon's, Sample and Multiscale), fractal dimension, Hurst and Lyapunov exponents and more
- **Statistics**
- **[`z_score()`](http://neurokit.readthedocs.io/en/latest/documentation.html#z-score)**: Normalize (scale and reduce) variables
- **[`find_outliers()`](http://neurokit.readthedocs.io/en/latest/documentation.html#find_outliers)**: Identify outliers
- **[`dprime()`](http://neurokit.readthedocs.io/en/latest/documentation.html#dprime)**: Computes Signal Detection Theory (SDT) parameters (d', c, beta, a', b''d)
- **Miscellaneous**
- **[`BMI()`](http://neurokit.readthedocs.io/en/latest/documentation.html#bmi)**: Compute the traditional body mass index (BMI), the new BMI, the Body Fat Percentage (BFP) and their interpretation






## Documentation

- [Tutorials](http://neurokit.readthedocs.io/en/latest/tutorials/index.html)
- [x] Biosignals processing
- [ ] M/EEG processing
- [API Documentation](http://neurokit.readthedocs.io/en/latest/documentation.html)


## Citation
You can cite NeuroKit with the following:
```
Makowski, D. (2016). NeuroKit: A Python Toolbox for Statistics and Neurophysiological Signal Processing (EEG, EDA, ECG, EMG...).
Memory and Cognition Lab' Day, 01 November, Paris, France
```
*Note: The authors do not give any warranty. If this software causes your keyboard to blow up, your brain to liquefy, your toilet to clog or a zombie plague to leak, the authors CANNOT IN ANY WAY be held responsible.*

## Credits
Note that important credits go to the developpers of the many packages upon which NeuroKit is built. Those include [mne](http://mne-tools.github.io/stable/index.html), [bioSPPy](https://github.com/PIA-Group/BioSPPy), [hrv](https://github.com/rhenanbartels/hrv), [bioread](https://github.com/njvack/bioread)... Make sure you cite them!


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neurokit-0.1.6.tar.gz (706.9 kB view details)

Uploaded Source

Built Distribution

neurokit-0.1.6-py3-none-any.whl (723.1 kB view details)

Uploaded Python 3

File details

Details for the file neurokit-0.1.6.tar.gz.

File metadata

  • Download URL: neurokit-0.1.6.tar.gz
  • Upload date:
  • Size: 706.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for neurokit-0.1.6.tar.gz
Algorithm Hash digest
SHA256 1be6ea27a78fcecd13f2dff83f3d86f2ef2046f81e8bd7a310e96ba4940e2d94
MD5 64c90b22a65b38eb1960922e5f1d0ab9
BLAKE2b-256 92cc78fc976922791e6b2f2ffbaeed05cb017e69616f01c2a601327c9afccfad

See more details on using hashes here.

File details

Details for the file neurokit-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for neurokit-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 14a25c0afe6d21d30c36104824ee2690638d79e8946bee4bb59f285a8ab1bb56
MD5 89d0e744361d57cc294150cc283699ea
BLAKE2b-256 e5cb738b99d15f307483f06e8a2dff1b0811b94670a6dc75bc35db1678cc726b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page