event.vectors is an R6 class object that creates a temporally-compared space of "event vectors", each comprised of a 'from' and 'to' temporal marker.

The time between these events is the focus of derivation: properly, the event vector is a complex number that encodes the relationship between the boundaries of the events, thus allowing one to describe this relationship in a concise manner.

Note

The user is responsible for setting the plan when in_parallel=TRUE.

Execution Workflow

The initial execution order should look something like the following ...
event.vectors$new(...)$configure(...)$make.evs_universe(...) . The ability to execute the preceding workflow out of order exists, but it is best to adhere to the provided flow the first time around.

Class Member "Space"

$space is a data.table that is populated upon execution of $make.evs_universe():

jk

Values of the "join key"

"crossed" time output

See cross_time()

fr_\*, to_\*

The temporal ranges of each from/toevent

src_pair

Values of the "from-to" pairings of events given by the contexts provided: FROM:TO

from_coord

String representation of temporal boundaries expressed as concatenated integers

to_coord

String representation of temporal boundaries expressed as concatenated integers

Edge Attributes

Edge attributes available for use are as follows:

  • jk: The "join key" value for the edge

  • beta, mGap, mSt, mEd, epsilon, epsilon_desc, from_len, to_len: See cross_time

  • from_coord, to_coord: String representations of temporal boundaries expressed as concatenated integes

  • src_pair: Values of the "from-to" pairings of events given by the contexts provided: FROM:TO

Public fields

space

The object containing the derived set of data.

q_graph

A 'query graph' list containing the event interactions for each level of 'jk' (see 'Details')

evt_graphs

Event graphs for each level of 'jk'. These are visIgraph-ready objects that can be plotted with visIgraph or manipulated with igraph-package functions. Initialize the Event Vector Class

Active bindings

config

This is an active binding that returns the configuration used to instantiate the class.

set_private

Set or get private variables

Methods


Method new()

Usage

event.vectors$new(...)

Arguments

...

(not used)


Method configure()

$configure() creates references to the source data to use.

Usage

event.vectors$configure(
  ...,
  src_mix = "comb",
  exclude_mix = list(),
  chatty = FALSE
)

Arguments

...

dots_list Objects of class Event

src_mix
"combination":

The default: generates unique pairs of sources

"refl0exive":

Compares each source to itself

"all":

The union of the preceding options


Partial matching is allowed, and generated combinations include the mirror (e.g., "A, B" will have a "B, A" combo pair generated).

exclude_mix

A list of vectors containing each source pair context to exclude (e.g. list(c("A", "C"), c("u", "k"))). evs_exclude.blender can be invoked to create this list more quickly. Combinations are not automatically mirrored as is the case with src_mix.

chatty

(logical | FALSE) Verbosity flag


Method make.evs_universe()

make.evs_universe supplies values to two class fields: q_graph and space, the latter being created from the former.

Additional Information:

  • Class member $space should have as many rows as the sum of all edge counts for graphs in $q_graph

  • The graphs in class member $evt_graphs are visIgraph-ready

  • Parallelism is internally supported via package furrr: the user is responsible for setting the appropriate plan

Usage

event.vectors$make.evs_universe(
  ...,
  time_control = list(-Inf, Inf),
  graph_control = NULL,
  unit = NULL,
  in_parallel = FALSE,
  graph_only = FALSE,
  chatty = FALSE,
  cache = NULL
)

Arguments

...

(dots_list) Logical expression that retain graph edges that meet the conditions (see 'Edge Attributes')

time_control

A 2-element list containing the minimum and maximum values allowed for total temporal span between two events

graph_control

An expression list containing igraph-package calls to manipulate the internally-created graph in the order provided. Use symbol g to generically denote the graph and <<- to update g.

unit

(See cross_time)

in_parallel

(logical | FALSE) Enable parallelism via mirai_map?

graph_only

(logical | FALSE) TRUE assumes class member $space exists (possibly after external modification) and recreates member $evt_graphs

chatty

(logical | FALSE) Verbosity flag

cache

(See cross_time)

Returns

Invisibly, the original object augmented with new member space


Method clone()

The objects of this class are cloneable with this method.

Usage

event.vectors$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.