network tools {bnlearn} | R Documentation |
Assign or extract various quantities of interest from an object of class bn
.
## nodes nodes(x) mb(x, node, rebuild = FALSE) nbr(x, node, rebuild = FALSE) parents(x, node, rebuild = FALSE) parents(x, node, debug = FALSE) <- value children(x, node, rebuild = FALSE) children(x, node, debug = FALSE) <- value root.nodes(x) leaf.nodes(x) ## arcs arcs(x) arcs(x, debug = FALSE) <- value directed.arcs(x) undirected.arcs(x) ## adjacency matrix amat(x) amat(x, debug = FALSE) <- value ## graphs nparams(x, data, debug = FALSE) acyclic(x, directed, debug = FALSE) directed(x) path(x, from, to, direct = TRUE, underlying.graph = FALSE, debug = FALSE)
x |
an object of class bn . |
node |
a character string, the label of a node. |
from |
a character string, the label of a node. |
to |
a character string, the label of a node (different from from ). |
value |
either a vector of character strings (for parents and
children ), an adjacency matrix (for amat ) or a data
frame with two columns (optionally labeled "from" and "to", for
arcs ) |
data |
a data frame, containing the data the Bayesian network was learned from. |
rebuild |
a boolean value. If TRUE the return value is rebuilt
from scratch using the arc set; otherwise the cached value are returned. |
direct |
a boolean value. If FALSE ignore any arc between from
and to when looking for a path. |
directed |
a boolean value. If TRUE the graph is assumed to be
completely directed (no undirected arcs), and a faster cycle detection
algorithm is used. |
underlying.graph |
a boolean value. If TRUE the underlying undirected
graph is used instead of the (directed) one from the x parameter. |
debug |
a boolean value. If TRUE a lot of debugging output is
printed; otherwise the function is completely silent. |
The number of parameters of a discrete Bayesian network is defined as the sum of the number of logically independent parameters of each node given its parents (Chickering, 1995).
mb
, nbr
, nodes
, parents
, rootnodes
and leafnodes
return a vector of character strings.
arcs
returns a matrix of two columns of character strings.
amat
returns a matrix of 0/1 numeric values.
nparams
returns an integer.
acyclic
, path
and directed
return a boolean value.
nparams
supports only completely directed discrete Bayesian networks.
Marco Scutari
D. M. Chickering. A Transformational Characterization of Equivalent Bayesian Network Structures. In Proceedings of 11th Conference on Uncertainty in Artificial Intelligence, pages 87-98. Morgan Kaufmann Publishers Inc., 1995.
data(learning.test) res = gs(learning.test) ## the Markov blanket of A. mb(res, "A") # [1] "B" "D" "C" ## the neighbourhood of F. nbr(res, "F") # [1] "E" ## the arcs in the graph. arcs(res) # from to # [1,] "A" "B" # [2,] "A" "D" # [3,] "B" "A" # [4,] "B" "E" # [5,] "C" "D" # [6,] "F" "E" ## the nodes of the graph. nodes(res) # [1] "A" "B" "C" "D" "E" "F" ## the adjacency matrix for the nodes of the graph. amat(res) # A B C D E F # A 0 1 0 1 0 0 # B 1 0 0 0 1 0 # C 0 0 0 1 0 0 # D 0 0 0 0 0 0 # E 0 0 0 0 0 0 # F 0 0 0 0 1 0 ## the parents of D. parents(res, "D") # [1] "A" "C" ## the children of A. children(res, "A") # [1] "D" ## the root nodes of the graph. root.nodes(res) # [1] "C" "F" ## the leaf nodes of the graph. leaf.nodes(res) # [1] "D" "E" ## number of parameters of the Bayesian network. res = set.arc(res, "A", "B") nparams(res, learning.test) # [1] 41