Skip to contents

Trial epoch, contains the following information: Block experiment block/session string; Time trial onset within that block; Trial trial number; Condition trial condition. Other optional columns are Event_xxx (starts with "Event"). See https://openwetware.org/wiki/RAVE:Epoching or more details.

Value

self$table

Public fields

name

epoch name, character

subject

RAVESubject instance

data

a list of trial information, internally used

table

trial epoch table

.columns

epoch column names, internally used

Active bindings

columns

columns of trial table

n_trials

total number of trials

trials

trial numbers

Methods


Method new()

constructor

Usage

RAVEEpoch$new(subject, name)

Arguments

subject

RAVESubject instance or character

name

character, make sure "epoch_<name>.csv" is in meta folder


Method trial_at()

get ith trial

Usage

RAVEEpoch$trial_at(i, df = TRUE)

Arguments

i

trial number

df

whether to return as data frame or a list


Method update_table()

manually update table field

Usage

RAVEEpoch$update_table()


Method set_trial()

set one trial

Usage

RAVEEpoch$set_trial(Block, Time, Trial, Condition, ...)

Arguments

Block

block string

Time

time in second

Trial

positive integer, trial number

Condition

character, trial condition

...

other key-value pairs corresponding to other optional columns


Method clone()

The objects of this class are cloneable with this method.

Usage

RAVEEpoch$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples


# Please download DemoSubject ~700MB from
# https://github.com/beauchamplab/rave/releases/tag/v0.1.9-beta

if (FALSE) {

# Load meta/epoch_auditory_onset.csv from subject demo/DemoSubject
epoch <-RAVEEpoch$new(subject = 'demo/DemoSubject',
                      name = 'auditory_onset')

# first several trials
head(epoch$table)

# query specific trial
old_trial1 <- epoch$trial_at(1)

# Create new trial or change existing trial
epoch$set_trial(Block = '008', Time = 10,
                Trial = 1, Condition = 'AknownVmeant')
new_trial1 <- epoch$trial_at(1)

# Compare new and old trial 1
rbind(old_trial1, new_trial1)

# To get updated trial table, must update first
epoch$update_table()
head(epoch$table)

}