Skip to main content

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) -> NicoletReader
  • NicoletReader.read_header() -> dict metadata (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() -> list of 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


Download files

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

Source Distribution

pynicolet-0.1.2.tar.gz (18.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pynicolet-0.1.2-py3-none-any.whl (18.3 kB view details)

Uploaded Python 3

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

Hashes for pynicolet-0.1.2.tar.gz
Algorithm Hash digest
SHA256 6aa65749548377edff1bda2fdf2669c8f9b4099341649171323c1a830f6c068c
MD5 818f16961b076a0bf384262809093bd9
BLAKE2b-256 f9bca4c50a15e4d60f31386666d305d36076b0085497d0865d52fa38fa34318c

See more details on using hashes here.

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

Hashes for pynicolet-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9c5866f069d26895baa745b271ed8ffa7a146a7524042c36013966f598abb6ac
MD5 28b4cb189cb0b18611c9cec69b5ff4d5
BLAKE2b-256 908a335da6796d1c820cf5d8aa41dccc753528363eea2d195a189b1e661ab0d2

See more details on using hashes here.

Supported by

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