# find.unsh.triple: Find all Unshielded Triples in an Undirected Graph In pcalg: Methods for Graphical Models and Causal Inference

## Description

Find all unshielded triples in an undirected graph, q, i.e., the ordered ((x,y,z) with x < z) list of all the triples in the graph.

## Usage

 `1` ```find.unsh.triple(g, check=TRUE) ```

## Arguments

 `g` adjacency matrix of type amat.cpdag representing the skeleton; since a skeleton consists only of undirected edges, `g` must be symmetric. `check` logical indicating that the symmetry of `g` should be checked.

## Details

A triple of nodes `x`, `y` and `z` is “unshielded”, if (all of these are true):

(i)

`x` and `y` are connected;

(ii)

`y` and `z` are connected;

(iii)

`x` and `z` are not connected.

## Value

 `unshTripl` Matrix with 3 rows containing in each column an unshielded triple `unshVect` Vector containing the unique number for each column in unshTripl (for internal use only)

## Author(s)

Diego Colombo, Markus Kalisch ([email protected]), and Martin Maechler

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14``` ```data(gmG) if (require(Rgraphviz)) { ## show graph plot(gmG\$g, main = "True DAG") } ## prepare skeleton use in example g <- wgtMatrix(gmG\$g) ## compute weight matrix g <- 1*(g != 0) # wgts --> 0/1; still lower triangular print.table(g, zero.print=".") skel <- g + t(g) ## adjacency matrix of skeleton ## estimate unshielded triples -- there are 13 : (uTr <- find.unsh.triple(skel)) ```

pcalg documentation built on June 5, 2018, 1:05 a.m.