selectFast {GGMselect} | R Documentation |
Select a graph within the (data-driven) families of graphs EW
, C01
, and LA
.
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 )
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. |
More details are available on ../doc/Notice.pdf
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] . |
Bouvier A, Giraud C, Huet S, Verzelen N.
Please use citation("GGMselect")
.
selectQE
, selectMyFam
,
simulateGraph
, penalty
,
convertGraph
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)