Learn R Programming

pcalg (version 1.1-4)

udag2pdagRelaxed: Extend a pcAlgo-object containing a skeleton to a PDAG

Description

This function extends a pcAlgo-object containing a skeleton and corresponding conditional independence information to a Partially Directed Acyclic Graph (PDAG). The result is a pcAlgo-object as well. There is no check whether the result is extendible to a DAG

Usage

udag2pdagRelaxed(gInput, verbose, unfVect=NULL)

Arguments

gInput
pcAlgo-object containing skeleton and cond. ind. information
verbose
0: No output; 1: Details
unfVect
Vector containing numbers that encode the unfaithful triple (as returned by pc.cons.intern). This is needed in the conservative PC.

Value

  • pcObjOriented pc-Object

Details

The skeleton is extended to a PDAG using rules by Spirtes and Pearl (see References). There is no test whether the result is really extendible.

References

P. Spirtes, C. Glymour and R. Scheines (2000) Causation, Prediction, and Search, 2nd edition, The MIT Press.

J. Pearl (2000), Causality, Cambridge University Press.

See Also

pdag2dag, dag2cpdag, udag2pdag, udag2pdagRelaxed, udag2pdagSpecial

Examples

Run this code
## simulate data
set.seed(123)
p <- 10
myDAG <- randomDAG(p, prob = 0.2)
trueCPDAG <- dag2cpdag(myDAG)
n <- 1000
d.mat <- rmvDAG(n, myDAG, errDist = "normal")

## define independence test (partial correlations)
indepTest <- gaussCItest 
## define sufficient statistics
suffStat <- list(C = cor(d.mat), n = n)
## estimate skeleton
resU <- skeleton(suffStat, indepTest, p, 0.05)

## orient edges using three different methods
resD1 <- udag2pdagRelaxed(resU,verbose=0)
resD2 <- udag2pdagSpecial(resU,verbose=0,n.max=100)
resD3 <- udag2pdag(resU,verbose=0)

Run the code above in your browser using DataLab