Skip to main content

Package for processing pupil data, with a focus on the post illumination pupil response.

Project description

Unit Test Status

Unit Tests

piprkit - Pupil Data Processing Package

A Python package for processing pupil data, with a focus on the post illumination pupil response (PIPR).

Features

  • Core data structures for pupillometry: PupilMeasurement and PupilSeries.
  • Utilities for light stimuli: LightStimulus and LightStimuliSeries with plotting and time-offset support.
  • Data loaders and example data: load_real_series, load_simulated_pupil, and simulate_pupil_measurement for quick demos and tests.
  • Preprocessing helpers: rolling mean/median, rate-of-change limiting, interpolation, trimming, and NaN handling.
  • Fitting framework: phase-based fitting (baseline, latency, constriction, sustained, redilation) and PupilFit convenience wrapper.
  • Basic metrics: baseline calculation and window-based helpers like pipr_6s, pipr_xs, peak_constriction, and time_to_peak.

Feature Completeness

Feature Category Status Description
Core Data Classes ✅ Implemented PupilMeasurement, PupilSeries
Light-Stimulus Utilities ✅ Implemented Utilities for stimulus handling
Preprocessing Filters ✅ Implemented Includes smoothing, normalization, etc.
Basic Metrics ✅ Implemented baseline, pipr_6s
Data Loaders ⚠️ Partially Implemented Functions to load example and user datasets implemented, better file loading required.
Fitting Pipeline ⚠️ Partially Implemented Some phase fits work; FitConstrict and PupilFit have TODOs, may return NaNs
FitLatency ❌ Not Implemented Stub only
Advanced PLR/PIPR Metrics ❌ Not Implemented transient_plr, plr_latency, constriction_v, redilation_v, auc_*, net_pipr

See TODO.md for an extensive list.

Installation

Examples

Check out the examples/ directory for Jupyter notebooks demonstrating:

  • Basic measurement processing
  • Time series analysis
  • Complete analysis workflows

License

[Add your license information here]

Author

S. Belgers

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

piprkit-0.0.16.tar.gz (962.2 kB view details)

Uploaded Source

Built Distribution

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

piprkit-0.0.16-py3-none-any.whl (972.6 kB view details)

Uploaded Python 3

File details

Details for the file piprkit-0.0.16.tar.gz.

File metadata

  • Download URL: piprkit-0.0.16.tar.gz
  • Upload date:
  • Size: 962.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for piprkit-0.0.16.tar.gz
Algorithm Hash digest
SHA256 e30b2dbd0b9fc37590c0c5c0fe32eeeb10bab0006d8621dcbc6672119c322e72
MD5 774fa6bd69ba33b2540f591d64445b66
BLAKE2b-256 d62cfa8f433d531f8f7cefd327b0735d49e049b43346482c5ebbbe0e8a8a8970

See more details on using hashes here.

File details

Details for the file piprkit-0.0.16-py3-none-any.whl.

File metadata

  • Download URL: piprkit-0.0.16-py3-none-any.whl
  • Upload date:
  • Size: 972.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for piprkit-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 9afeb0f36c3435d9b14cbe8625fd1a6f4e80bc84b1854f524ef6008611cff524
MD5 41b162dd3cda80e5beb564e0499f6d6b
BLAKE2b-256 38c5f918bc3b7cfc6a06fedc03c8dd53d39ffcc1b4e4a774f10fb249e2df14d7

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