Reproducible Pipeline Infrastructure for Neuroscience

Defines the underlying pipeline structure for reproducible neuroscience, adopted by 'RAVE' (reproducible analysis and visualization of intracranial electroencephalography); provides high-level class definition to build, compile, set, execute, and share analysis pipelines. Both R and 'Python' are supported, with 'Markdown' and 'shiny' dashboard templates for extending and building customized pipelines. See the full documentations at < https://rave.wiki>; to cite us, check out our paper by Magnotti, Wang, and Beauchamp (2020, ), or run citation("ravepipeline") for details.


ravepipeline

R-CMD-check CRAN status ravepipeline status badge

The goal of ravepipeline is to provide pipeline infrastructure for Reproducible Analysis and Visualization of Intracranial Electroencephalography (RAVE). The package defines high-level class to build, compile, set, execute, and share neuroscience pipelines. Both R and Python are supported with Markdown and shiny dashboard templates for extending and building customized pipelines.

We offers several built-in pipelines, see repository rave-ieeg/rave-pipelines for details.

More documentation is available at rave.wiki

Installation

Please check out our full installation guide on how to install 'RAVE'

For full features, please install additional packages:

# install.packages(c("remotes", "visNetwork", "rpymat"))

# Install development version
remotes::install_github("dipterix/ravepipeline")

# Download built-in pipelines
ravepipeline::ravepipeline_finalize_installation()

# Configure Python environment if needed
rpymat::configure_conda()

Run analysis pipelines

This example requires you to download RAVE demo data, which comes with the full installations.

The built-in pipelines include Power Explorer, a powerful tool to group stimuli for time-frequency analysis and visualization. Here's an example of how to use it on our demo data set:

https://github.com/user-attachments/assets/75fe0f88-58ca-46ee-a831-f22abbaa5343

library(ravepipeline)

# list all the pipelines
pipeline_list()

# Run power explorer
power_explorer <- pipeline("power_explorer")

# List all runnable pipeline targets
power_explorer$target_table

# set inputs for analysis
power_explorer$set_settings(
  project_name = "demo", 
  subject_code = "DemoSubject", 
  loaded_electrodes = "13-16,24", 
  epoch_choice = "auditory_onset", 
  epoch_choice__trial_starts = -1L, 
  epoch_choice__trial_ends = 2L, 
  reference_name = "default", 
  baseline_settings = list(
    window = list(c(-1, -0.5)),
    scope = "Per frequency, trial, and electrode", 
    unit_of_analysis = "decibel"), 
  analysis_electrodes = "14", 
  first_condition_groupings = list(
    list(label = "audio_visual", conditions = c("known_av", "meant_av", "last_av", "drive_av")),
    list(label = "auditory_only", conditions = c("last_a", "drive_a", "known_a", "meant_a")), 
    list(label = "visual_only", conditions = c("last_v", "drive_v", "known_v", "meant_v"))), 
  condition_variable = "Condition", 
  analysis_settings = list(
    list(label = "AudStart", event = "Trial Onset", 
         time = 0:1, frequency = c(70L, 150L))),
  enable_second_condition_groupings = FALSE, 
  enable_custom_ROI = FALSE, 
  omnibus_includes_all_electrodes = TRUE
)


# Run pipeline to obtain the power of frequency over time
time_freq_data <- power_explorer$run("by_frequency_over_time_data")

# Load up custom pipeline functions
pipeline_functions <- power_explorer$shared_env()

# plot the result
pipeline_functions$plot_by_frequency_over_time(time_freq_data)

# visualize the results
power_explorer$visualize(glimpse = TRUE, aspect_ratio = 10)

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("ravepipeline")

0.2.0 by Zhengjia Wang, 2 months ago


https://dipterix.org/ravepipeline/, https://rave.wiki, https://github.com/dipterix/ravepipeline


Report a bug at https://github.com/dipterix/ravepipeline/issues


Browse source code at https://github.com/cran/ravepipeline


Authors: Zhengjia Wang [aut, cre, cph] , John Magnotti [ctb, res] , Xiang Zhang [ctb, res] , Michael Beauchamp [ctb, res] , Trustees of University of Pennsylvania [cph] (Copyright Holder)


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports grDevices, graphics, stats, tools, utils, base64enc, callr, cli, digest, fastmap, future, fst, glue, jsonlite, knitr, promises, R6, remotes, rlang, targets, uuid, yaml, logger

Suggests ellmer, dipsaus, filearray, future.apply, globals, ieegio, pkgsearch, rpymat, rmarkdown, rstudioapi, shidashi, threeBrain, testthat, visNetwork, later, shiny, mirai


Imported by ravecore.


See at CRAN