Top Qs
Timeline
Chat
Perspective
NeuroKit
From Wikipedia, the free encyclopedia
Remove ads
NeuroKit ("nk") is an open source toolbox for physiological signal processing.[1] The most recent version, NeuroKit2, is written in Python and is available from the PyPI package repository.[2] As of June 2022, the software was used in 94 scientific publications.[3] NeuroKit2 is presented as one of the most popular and contributor-friendly open-source software for neurophysiology based on the number of downloads, the number of contributors, and other GitHub metricsa.[4]
Remove ads
History
The first version of NeuroKit was created as a PhD side-project of Dominique Makowski in 2017.[1] It was officially deprecated in 2020 and has been replaced by the current version, NeuroKit2. A few major updates have been released since:[5]
- February 08, 2021: The 0.1.0 release coincides with the first publication of the software.
- May 18, 2022: The 0.2.0 release coincides with an overhaul of the documentation.
NeuroKit has received the 2024 Commendation Award from the Society for the Improvement of Psychological Science (SIPS).[6]
Remove ads
Features
NeuroKit2 includes tools to work with cardiac activity from electrocardiography (ECG) and photoplethysmography (PPG), electrodermal activity (EDA), respiratory (RSP), electromyography (EMG), and electrooculography (EOG) signals.[7]
It enables the computation of Heart Rate Variability (HRV) and Respiratory Variability (RRV) metrics.[8][9]
It also implements a variety of different algorithms to detect R-peaks and other QRS waves, including an efficient in-house R-peak detector.[10][11]
For neurophysiological signals such as EEG, it supports microstates and frequency band analysis.[citation needed]
It also includes a comprehensive set of functions used for fractal physiology, allowing the computation of various measures of complexity (including entropy and fractal dimensions).[12]
Remove ads
Design
The software was designed to be accessible to users without programming experience, with the possibility of using high-level functions to run entire preprocessing or analysis routines.[1][13]
import neurokit2 as nk
# Download example data
data = nk.data("bio_eventrelated_100hz")
# Preprocess the data (filter, find peaks, etc.)
processed_data, info = nk.bio_process(ecg=data["ECG"], rsp=data["RSP"], eda=data["EDA"], sampling_rate=100)
# Compute relevant features
results = nk.bio_analyze(processed_data, sampling_rate=100)
See also
Other open-source toolboxes for analysis of physiological signals include:
- Neurophysiological Biomarker Toolbox (MatLab)
- EEGLAB (MatLab)
- MNE-Python (Python)
Notes
References
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads