# arc operations.
set.arc(x, from, to, check.cycles = TRUE, check.illegal = TRUE, debug = FALSE)
drop.arc(x, from, to, debug = FALSE)
reverse.arc(x, from, to, check.cycles = TRUE, check.illegal = TRUE, debug = FALSE)# edge (i.e. undirected arc) operations
set.edge(x, from, to, check.cycles = TRUE, check.illegal = TRUE, debug = FALSE)
drop.edge(x, from, to, debug = FALSE)
bn.TRUE the graph is tested for
acyclicity; otherwise the graph is returned anyway.TRUE arcs that break the
parametric assumptions of x, such as those from continuous to
discrete nodes in conditional Gaussian networks, cause an error.TRUE a lot of debugging output is
printed; otherwise the function is completely silent.x.set.arc function operates in the following way:
from and to, the arc
from \(\rightarrow\) to is added.
from and to, its
direction is set to from \(\rightarrow\) to.
to \(\rightarrow\) from is present,
it is reversed.
from \(\rightarrow\) to is present, no
action is taken.
drop.arc function operates in the following way:
from and to, no action is
taken.
from and
to, it is dropped regardless of its direction.
reverse.arc function operates in the following way:
from and to, it returns an
error.
from and to, it
returns an error.
to \(\rightarrow\) from is present, it
is reversed.
from \(\rightarrow\) to is present, it
is reversed.
set.edge function operates in the following way:
from and to, the undirected
arc from - to is added.
from and to, no
action is taken.
from \(\rightarrow\) to or the
arc to \(\rightarrow\) from are present, they are
replaced with the undirected arc from - to.
drop.edge function operates in the following way:
from and to, no
action is taken.
from and to, it
is removed.
from and to, no
action is taken.
data(learning.test)
res = gs(learning.test)
## use debug = TRUE to get more information.
set.arc(res, "A", "B")
drop.arc(res, "A", "B")
drop.edge(res, "A", "B")
reverse.arc(res, "A", "D")
Run the code above in your browser using DataLab