selectFast {GGMselect}R Documentation

Estimate a graph in a Gaussian Graphical Model: Fast procedure

Description

Select a graph within the (data-driven) families of graphs EW, C01, and LA.

Usage

selectFast(X, dmax=min(floor(nrow(X)/3),nrow(X)-3,ncol(X)-1),
           K=2.5, family="EW",
           min.ev=10**(-8), max.iter=200, eps=0.01,
           beta=nrow(X)*nrow(X)/2, tau=1/sqrt(nrow(X)*(ncol(X)-1)), h=0.001, T0=10,
           verbose=FALSE )

Arguments

X

n x p matrix where n is the sample size and p the number of variables. n should be greater than 3 and p greater than 1.

dmax

integer or p-dimensional vector of integers smaller or equal to min(n-3, p-1). When dmax is a scalar, it gives the maximum degree of the estimated graph. When dmax is a vector, dmax[a] gives the maximum degree of the node a.

K

scalar or vector with values greater than 1. Tuning parameter of the penalty function.

family

character string or vector of character strings, among "EW", "LA", "C01", c("C01","LA") or c("C01","LA","EW").

min.ev

minimum eigenvalue for matrix inversion.

max.iter, eps, beta, tau, h, T0

tuning parameters for the Langevin Monte Carlo algorithm. Only used when family is "EW" or c("C01","LA","EW").

verbose

logical. If TRUE a trace of the current process is displayed in real time.

Details

More details are available on ../doc/Notice.pdf

Value

A list with components "EW", "LA", "C01", "C01.LA" and "C01.LA.EW", according to the family argument, each one with components:

Neighb

array of dimension p x max(dmax) x length(K) or, when length(K) equals 1, matrix of dimension p x max(dmax). Neighb[a, , k ] contains the indices of the nodes connected to node a for K[k].

crit.min

vector of dimension length(K). It gives the minimal values of the selection criterion for each value of K

G

array of dimension p x p x length(K) or, when length(K) equals 1, matrix of dimension p x p. G[,,k] gives the adjacency matrix for K[k].

Author(s)

Bouvier A, Giraud C, Huet S, Verzelen N.

References

Please use citation("GGMselect").

See Also

selectQE, selectMyFam, simulateGraph, penalty, convertGraph

Examples

p=30
n=30
# simulate graph
eta=0.11
Gr <- simulateGraph(p,eta)
# simulate data
X <- rmvnorm(n, mean=rep(0,p), sigma=Gr$C)
# estimate graph
GRest <- selectFast(X, family="C01")

# plot result
library(network)
par(mfrow=c(1,2))
gV <- network(Gr$G)
plot(gV,jitter=TRUE, usearrows = FALSE, label=1:p,displaylabels=TRUE)
g <- network(GRest$C01$G)
plot(g, jitter=TRUE, usearrows = FALSE,  label=1:p,displaylabels=TRUE)

[Package GGMselect version 0.1-12.7 Index]