Test for d-separation in a DAG
This function tests for d-separation of nodes in a DAG.
dsep(a, b, S=NULL, g, john.pairs = NULL)
a |
Label (sic!) of node A |
b |
Label (sic!) of node B |
S |
Labels (sic!) of set of nodes on which it is conditioned, maybe empty |
g |
The Directed Acyclic Graph (object of |
john.pairs |
The shortest path distance matrix for all pairs of
nodes as computed (also by default) in
|
This function checks separation in the moralized graph as explained in Lauritzen (2004).
TRUE if a and b are d-separated by S in G, otherwise FALSE.
Markus Kalisch (kalisch@stat.math.ethz.ch)
S.L. Lauritzen (2004), Graphical Models, Oxford University Press, Chapter 3.2.2
## generate random DAG p <- 8 set.seed(45) myDAG <- randomDAG(p, prob = 0.3) if (require(Rgraphviz)) { plot(myDAG) } ## Examples for d-separation dsep("1","7",NULL,myDAG) dsep("4","5",NULL,myDAG) dsep("4","5","2",myDAG) dsep("4","5",c("2","3"),myDAG) ## Examples for d-connection dsep("1","3",NULL,myDAG) dsep("1","6","3",myDAG) dsep("4","5","8",myDAG)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.