Skip to content
/ eyeris Public

a flexible R package for creating reproducible pupillometry preprocessing pipelines

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md
Notifications You must be signed in to change notification settings

shawntz/eyeris

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Feb 26, 2025
859c01c · Feb 26, 2025
Feb 11, 2025
Feb 26, 2025
Feb 11, 2025
Sep 30, 2024
Feb 26, 2025
Feb 26, 2025
Feb 26, 2025
Feb 11, 2025
Feb 11, 2025
Sep 9, 2024
Nov 24, 2024
Feb 11, 2025
Sep 27, 2024
Feb 26, 2025
Sep 9, 2024
Aug 30, 2024
Nov 24, 2024
Feb 11, 2025
Feb 26, 2025
Feb 26, 2025
Feb 26, 2025
Feb 11, 2025
Feb 26, 2025
Aug 15, 2024

Repository files navigation

eyeris: flexible reproducible pupil preprocessing pipelines in R eyeris website

MIT License Badge Package Build Status Badge Package Linter Status Badge

Installation

You can install the development version of eyeris from GitHub with:

# install.packages("devtools")
devtools::install_github("shawntz/eyeris")

or

# install.packages("pak")
pak::pak("shawntz/eyeris")

Example

the glassbox() “prescription” function

This is a basic example of how to use eyeris out of the box with our very opinionated set of steps and parameters that one should start out with when preprocessing pupillometry data. Critically, this is a “glassbox” – as opposed to a “blackbox” – since each step and parameter implemented herein is fully open and accessible to you. We designed each pipeline step / function to be like legos – they are intentionally and carefully designed in a way that allows you to flexibly construct and compare different pipelines.

We hope you enjoy! -shawn

set.seed(32)

library(eyeris)

demo_data <- system.file("extdata", "memory.asc", package = "eyeris")

eyeris_preproc <- glassbox(
  demo_data,
  detrend_data = F,
  lpfilt = list(plot_freqz = T)
)
#> ✔ [  OK  ] - Running eyeris::load_asc()
#> ✔ [  OK  ] - Running eyeris::deblink()
#> ✔ [  OK  ] - Running eyeris::detransient()
#> ✔ [  OK  ] - Running eyeris::interpolate()
#> ✔ [  OK  ] - Running eyeris::lpfilt()
#> ✔ [  OK  ] - Skipping eyeris::detrend()
#> ✔ [  OK  ] - Running eyeris::zscore()

step-wise correction of pupillary signal

plot(eyeris_preproc)
#> ℹ Plotting block 1 from possible blocks: 1

final pre-post correction of pupillary signal (raw ➡ preprocessed)

plot(eyeris_preproc,
     steps = c(1, 5),
     preview_window = c(0, nrow(eyeris_preproc$timeseries$block_1)))
#> ℹ Plotting block 1 from possible blocks: 1

eyeris dependency graph 🙈


Comments, suggestions, questions, issues?

Please use the issues tab (https://github.com/shawntz/eyeris/issues) to make note of any bugs, comments, suggestions, feedback, etc… all are welcomed and appreciated, thanks!