A lightweight Python library for reading legacy Nicolet EEG files
Project description
pynicolet
pynicolet is a lightweight Python library for reading legacy Nicolet EEG files and converting them into convenient Python data structures for analysis and visualization.
Features
- Parse legacy Nicolet EEG file formats (amplifier/channel metadata, timestamps, and samples)
- Export to NumPy arrays
- Basic support for annotations and event markers
- Streamlined API for quick loading and inspection
- Small and dependency-light core
Installation
Install from PyPI (when published):
pip install pynicolet
Or install from source:
git clone https://github.com/NathENSAE/pynicolet.git
cd pynicolet
pip install -e .
Quickstart
Load a Nicolet file and convert to NumPy:
from pynicolet import NicoletReader
# open file
reader = NicoletReader(filename)
# read header and channels info (optional, read_data does it automatically)
header = reader.read_header()
# read raw samples as NumPy array (samples x channels)
# defaults to first segment and all matching channels
data = reader.read_data()
Supported Inputs
- Nicolet legacy binary formats (commonly used clinical EEG recordings)
- Header + data pairs typical of older Nicolet systems Note: If your files differ, open an issue with sample metadata (not patient data) to help extend support.
API Overview
NicoletReader(filename)->NicoletReaderNicoletReader.read_header()->dictmetadata (channels, sampling rate, segments)NicoletReader.read_data(segment=0, chIdx=None, range_=None)->NumPy array[samples, channels]segment: 0-based index of the recording segment.chIdx: List of 0-based channel indices.range_:[start, end]1-based sample range (inclusive).
NicoletReader.read_events()->listof event dictionaries [sample, type, value]
See the docs/ directory for full API documentation and examples.
Contributing
Contributions are welcome. Please:
- Open issues for bugs or feature requests
- Add tests for new features
- Follow existing code style and include changelog entries
Contact
Project: pynicolet — for questions or help open an issue on the repository.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pynicolet-0.1.2.tar.gz.
File metadata
- Download URL: pynicolet-0.1.2.tar.gz
- Upload date:
- Size: 18.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6aa65749548377edff1bda2fdf2669c8f9b4099341649171323c1a830f6c068c
|
|
| MD5 |
818f16961b076a0bf384262809093bd9
|
|
| BLAKE2b-256 |
f9bca4c50a15e4d60f31386666d305d36076b0085497d0865d52fa38fa34318c
|
File details
Details for the file pynicolet-0.1.2-py3-none-any.whl.
File metadata
- Download URL: pynicolet-0.1.2-py3-none-any.whl
- Upload date:
- Size: 18.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c5866f069d26895baa745b271ed8ffa7a146a7524042c36013966f598abb6ac
|
|
| MD5 |
28b4cb189cb0b18611c9cec69b5ff4d5
|
|
| BLAKE2b-256 |
908a335da6796d1c820cf5d8aa41dccc753528363eea2d195a189b1e661ab0d2
|