Learn R Programming

dagitty (version 0.3-4)

EquivalentModels: Generating Equivalent Models

Description

equivalenceClass(x) generates a complete partially directed acyclic graph (CPDAG) from an input DAG x. The CPDAG represents all graphs that are Markov equivalent to x: undirected 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).

Usage

equivalenceClass(x)

equivalentDAGs(x, n = 100)

Arguments

x

the input graph, a DAG (or CPDAG for equivalentDAGs).

n

maximal number of returned graphs.

Details

equivalentDAGs(x,n) enumerates at most n DAGs that are Markov equivalent to the input DAG or CPDAG x.

Examples

Run this code
# 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 == "--")

Run the code above in your browser using DataLab