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.
The user is responsible for setting the plan
when in_parallel=TRUE
.
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.
$space
is a data.table
that is populated upon execution of $make.evs_universe()
:
jk
Values of the "join key"
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
space
The object containing the derived set of data (see 'Details')
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' (see 'Details') Initialize the Event Vector Class
config
This is an active binding that returns the configuration used to instantiate the class.
set_private
Set or get private variables
configure()
$configure()
creates references to the source data to use.
event.vectors$configure(
...,
src_mix = "comb",
exclude_mix = list(),
chatty = FALSE
)
...
dots_list
Objects of class 'Event'
src_mix
The default: generates unique pairs of sources
Compares each source to itself
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
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
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
)
...
(dots_list
) Logical expression that retain graph edges meeting the conditions
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
) Shoudl parallelism via future_map
be enabled?
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
)