# NeuroKit2

> A Python toolbox for processing and analyzing neurophysiological signals such as ECG, EDA, EEG, EMG, EOG, PPG and respiration.

NeuroKit2 is an open-source Python toolbox for neurophysiological signal processing, maintained under the neuropsychology GitHub organization and documented by Dominique Makowski and the team. It covers cardiac, electrodermal, respiratory, muscle, eye and brain signals, with documentation, examples and studies. The latest listed release is v0.2.13.

## What It Is

NeuroKit2 is a Python library for analyzing biosignals. Its documentation organizes functions by signal type: ECG, PPG, HRV, respiration (RSP), EDA, EMG, EOG and EEG. It also includes video analysis, microstates, signal, events, epochs, complexity, Markov chains, stats and benchmarking modules.

## Workflows and Outputs

The documentation provides hands-on examples for event-related and interval-related analysis and for customizing processing pipelines. Other examples cover heart rate variability, extracting and visualizing individual heartbeats, locating P, Q, S and T waves in ECG, ECG-derived respiration, generating abnormal 12-lead ECG, electrodermal activity peaks, respiratory rate variability and EOG analysis. Further examples cover simulating artificial physiological signals, saving preprocessing reports, EEG power in frequency bands, EEG complexity, EEG microstates, function fitting and epoch creation.

## Learning Resources and Research

The docs include a codebook, a Python primer, a contributing guide, guidance on recording good-quality signals, and linked studies on HRV, complexity indices, EEG analysis with GAMs, ECG benchmarking and EOG blink templates.

## Features
- ECG processing and wave delineation
- Heart rate variability analysis
- PPG, respiration, EDA, EMG and EOG analysis
- EEG power, complexity and microstate analysis
- Event-related and interval-related analysis
- Synthetic physiological signal simulation
- Preprocessing report generation
- Complexity and entropy indices
- Benchmarking functions
- Customizable processing pipelines

## Platforms
API, DEVELOPER_SDK

## Pricing
Open Source

## Version
0.2.13

## Links
- Website: https://neuropsychology.github.io/NeuroKit
- Documentation: https://neuropsychology.github.io/NeuroKit
- Repository: https://github.com/neuropsychology/NeuroKit
- EveryDev.ai: https://www.everydev.ai/tools/neurokit2
