# essentialGraph: Plot an ABN graphic In abn: Modelling Multivariate Data with Additive Bayesian Networks

## Description

Plot an ABN DAG using formula statement or a matrix in using Rgraphviz through the graphAM class

## Usage

 `1` ```essentialGraph(dag, node.names = NULL, PDAG = "minimal") ```

## Arguments

 `dag` a matrix or a formula statement (see ‘Details’ for format) defining the network structure, a directed acyclic graph (DAG). `node.names` a vector of names if the DAG is given via formula, see ‘Details’. `PDAG` a character value that can be: minimal or complete, see ‘Details’.

## Details

This function returns an essential graph from a DAG. This can be useful if the learning procedure is defined up to a Markov class of equivalence. A minimal PDAG is defined as only directed edges are those who participate in v-structure. Whereas the completed PDAG: every directed edge corresponds to a compelled edge, and every undirected edge corresponds to a reversible edge.

The `dag` can be provided using a formula statement (similar to glm). A typical formula is ` ~ node1|parent1:parent2 + node2:node3|parent3`. The formula statement have to start with `~`. In this example, node1 has two parents (parent1 and parent2). node2 and node3 have the same parent3. The parents names have to exactly match those given in `node.names`. `:` is the separator between either children or parents, `|` separates children (left side) and parents (right side), `+` separates terms, `.` replaces all the variables in `node.names`.

## Value

A matrix giving the PDAG.

Gilles Kratzer

## References

West, D. B. (2001). Introduction to Graph Theory. Vol. 2. Upper Saddle River: Prentice Hall.

Further information about abn can be found at:
http://r-bayesian-networks.org

## Examples

 ```1 2 3 4 5``` ```dag <- matrix(c(0,0,0, 1,0,0, 1,1,0), nrow = 3, ncol = 3) dist <- list(a="gaussian", b="gaussian", c="gaussian") colnames(dag) <- rownames(dag) <- names(dist) essentialGraph(dag) ```

abn documentation built on Oct. 23, 2020, 6:16 p.m.