Following the methodology from eng2022a;textualgraphicalExtremes, fits an extremal graph structure using the neighborhood selection approach (see meins2006;textualgraphicalExtremes) or graphical lasso (see friedman2008;textualgraphicalExtremes).
eglearn(
data,
p = NULL,
rholist = c(0.1, 0.15, 0.19, 0.205),
reg_method = c("ns", "glasso"),
complete_Gamma = FALSE
)
List made of:
graph
A list of igraph::graph
objects representing the
fitted graphs for each rho
in rholist
.
Gamma
A list of numeric estimated \(d \times d\)
variogram matrices \(\Gamma\) corresponding to the fitted graphs,
for each rho
in rholist
. If complete_Gamma = FALSE
or the
underlying graph is not connected, it returns NULL
.
rholist
The list of penalty coefficients.
graph_ic
A list of igraph::graph
objects
representing the optimal graph
according to the aic
, bic
, and mbic
information criteria.
If reg_method = "glasso"
, it returns a list of NULL
.
Gamma_ic
A list of numeric \(d \times d\) estimated
variogram matrices \(\Gamma\) corresponding
to the aic
, bic
, and mbic
information criteria.
If reg_method = "glasso"
, complete_Gamma = FALSE
, or the underlying
graph is not connected, it returns a list of NULL
.
Numeric \(n \times d\) matrix, where n
is the
number of observations and d
is the dimension.
Numeric between 0 and 1 or NULL
. If NULL
(default),
it is assumed that the data
are already on multivariate Pareto scale. Else,
p
is used as the probability in the function data2mpareto()
to standardize the data
.
Numeric vector of non-negative regularization parameters
for the lasso.
Default is rholist = c(0.1, 0.15, 0.19, 0.205)
.
For details see glasso::glassopath()
.
One of "ns", "glasso"
, for neighborhood selection and
graphical lasso, respectively.
Default is reg_method = "ns"
.
For details see meins2006;textualgraphicalExtremes,
friedman2008;textualgraphicalExtremes.
Whether you want to try fto complete Gamma matrix.
Default is complete_Gamma = FALSE
.
Other structure estimation methods:
data2mpareto()
,
eglatent()
,
emst()
,
fit_graph_to_Theta()
set.seed(2)
m <- generate_random_model(d=6)
y <- rmpareto(n=500, par=m$Gamma)
ret <- eglearn(y)
Run the code above in your browser using DataLab