Generating Equivalent Models
equivalenceClass(x) generates a complete partially directed acyclic graph
(CPDAG) from an input DAG
x. The CPDAG represents all graphs that are Markov
edges in the CPDAG can be oriented either way, as long as this does not create a cycle
or a new v-structure (a sugraph a -> m <- b, where a and b are not adjacent).
equivalenceClass(x)equivalentDAGs(x, n = 100)
- the input graph, a DAG.
- maximal number of returned graphs.
equivalentDAGs(x,n) enumerates at most
n DAGs that are Markov equivalent
# How many equivalent DAGs are there for the sports DAG example? g <- getExample("Shrier") length(equivalentDAGs(g)) # Plot all equivalent DAGs par( mfrow=c(2,3) ) lapply( equivalentDAGs(g), plot ) # How many edges can be reversed without changing the equivalence class? sum(edges(equivalenceClass(g))$e == "--")