This function uses the glasso
package
(Friedman, Hastie and Tibshirani, 2011) to compute a
sparse gaussian graphical model with the graphical lasso
(Friedman, Hastie & Tibshirani, 2008).
The tuning parameter is chosen using the Extended Bayesian Information criterion
(EBIC) described by Foygel & Drton (2010).
Usage
EBICglasso.qgraph(
data,
n = NULL,
corr = c("auto", "cor_auto", "cosine", "pearson", "spearman"),
na.data = c("pairwise", "listwise"),
gamma = 0.5,
penalize.diagonal = FALSE,
nlambda = 100,
lambda.min.ratio = 0.1,
returnAllResults = FALSE,
penalizeMatrix,
countDiagonal = FALSE,
refit = FALSE,
model.selection = c("EBIC", "JSD"),
verbose = FALSE,
...
)
Arguments
- data
Matrix or data frame. Should consist only of variables to be used in the analysis
- n
Numeric (length = 1). Sample size if
data
provided is a correlation matrix- corr
Character (length = 1). Method to compute correlations. Defaults to
"auto"
. Available options:"auto"
— Automatically computes appropriate correlations for the data using Pearson's for continuous, polychoric for ordinal, tetrachoric for binary, and polyserial/biserial for ordinal/binary with continuous. To change the number of categories that are considered ordinal, useordinal.categories
(seepolychoric.matrix
for more details)"cor_auto"
— Usescor_auto
to compute correlations. Arguments can be passed along to the function"cosine"
— Usescosine
to compute cosine similarity"pearson"
— Pearson's correlation is computed for all variables regardless of categories"spearman"
— Spearman's rank-order correlation is computed for all variables regardless of categories
For other similarity measures, compute them first and input them into
data
with the sample size (n
)- na.data
Character (length = 1). How should missing data be handled? Defaults to
"pairwise"
. Available options:"pairwise"
— Computes correlation for all available cases between two variables"listwise"
— Computes correlation for all complete cases in the dataset
- gamma
Numeric (length = 1) EBIC tuning parameter. Defaults to
0.50
and is generally a good choice. Setting to0
will cause regular BIC to be used- penalize.diagonal
Boolean (length = 1). Should the diagonal be penalized? Defaults to
FALSE
- nlambda
Numeric (length = 1). Number of lambda values to test. Defaults to
100
- lambda.min.ratio
Numeric (length = 1). Ratio of lowest lambda value compared to maximal lambda. Defaults to
0.1
. NOTEqgraph
sets the default to0.01
- returnAllResults
Boolean (length = 1). Whether all results should be returned. Defaults to
FALSE
(network only). Set toTRUE
to accessglassopath
output- penalizeMatrix
Boolean matrix. Optional logical matrix to indicate which elements are penalized
- countDiagonal
Boolean (length = 1). Should diagonal be counted in EBIC computation? Defaults to
FALSE
. Set toTRUE
to mimicqgraph
< 1.3 behavior (not recommended!)- refit
Boolean (length = 1). Should the optimal graph be refitted without LASSO regularization? Defaults to
FALSE
- model.selection
Character (length = 1). How lambda should be selected within GLASSO. Defaults to
"EBIC"
."JSD"
is experimental and should not be used otherwise- verbose
Boolean (length = 1). Whether messages and (insignificant) warnings should be output. Defaults to
FALSE
(silent calls). Set toTRUE
to see all messages and warnings for every function call- ...
Arguments sent to
glasso
Details
The glasso is run for 100 values of the tuning parameter logarithmically
spaced between the maximal value of the tuning parameter at which all edges are zero,
lambda_max, and lambda_max/100. For each of these graphs the EBIC is computed and
the graph with the best EBIC is selected. The partial correlation matrix
is computed using wi2net
and returned.
References
Instantiation of GLASSO
Friedman, J., Hastie, T., & Tibshirani, R. (2008).
Sparse inverse covariance estimation with the graphical lasso.
Biostatistics, 9, 432-441.
glasso + EBIC
Foygel, R., & Drton, M. (2010).
Extended Bayesian information criteria for Gaussian graphical models.
In Advances in neural information processing systems (pp. 604-612).
glasso package
Friedman, J., Hastie, T., & Tibshirani, R. (2011).
glasso: Graphical lasso-estimation of Gaussian graphical models.
R package version 1.7.
Tutorial on EBICglasso
Epskamp, S., & Fried, E. I. (2018).
A tutorial on regularized partial correlation networks.
Psychological Methods, 23(4), 617–634.