NeuroKit2: A Python Toolbox for Neurophysiological Signal Processing
Dominique Makowski, Tam Pham, Zen Juen Lau, Jan C. Brammer, François Lespinasse, Pham Tien Hung, Christopher Schoelzel, Shen‐Hsing Annabel Chen
Abstract
NeuroKit2 is an open-source, community-driven, and user-friendly Python package dedicated to neurophysiological signal processing with an initial focus on bodily signals (e.g., ECG, PPG, EDA, EMG, RSP). Its design philosophy is centred on user-experience and accessibility to both novice and advanced users. The package provides a consistent set of high-level functions that enable data processing in a few lines of code using validated pipelines, which we illustrate in two examples covering the most typical scenarios, such as an event-related paradigm and an interval-related analysis. The package also includes tools dedicated to specific processing steps such as rate extraction and filtering methods, offering a trade-off between efficiency and fine-tuned control to the user. Rather than focusing on specific signals, NeuroKit2 was developed to provide a comprehensive means for a simultaneous processing of a wide range of signals. Its goal is to improve transparency and reproducibility in neurophysiological research, as well as foster exploration and innovation.