Networkfamily | R Documentation |
The functions PLNnetwork()
and ZIPLNnetwork()
both produce an instance of this class, which can be thought of as a vector of PLNnetworkfit
s ZIPLNfit_sparse
s (indexed by penalty parameter)
This class comes with a set of methods mostly used to compare
network fits (in terms of goodness of fit) or extract one from
the family (based on penalty parameter and/or goodness of it).
See the documentation for getBestModel()
,
getModel()
and plot() for the user-facing ones.
PLNmodels::PLNfamily
-> Networkfamily
penalties
the sparsity level of the network in the successively fitted models
stability_path
the stability path of each edge as returned by the stars procedure
stability
mean edge stability along the penalty path
criteria
a data frame with the values of some criteria (variational log-likelihood, (E)BIC, ICL and R2, stability) for the collection of models / fits BIC, ICL and EBIC are defined so that they are on the same scale as the model log-likelihood, i.e. with the form, loglik - 0.5 penalty
new()
Initialize all models in the collection
Networkfamily$new(penalties, data, control)
penalties
a vector of positive real number controlling the level of sparsity of the underlying network.
data
a named list used internally to carry the data matrices
control
a list for controlling the optimization.
Update all network fits in the family with smart starting values
optimize()
Call to the C++ optimizer on all models of the collection
Networkfamily$optimize(data, config)
data
a named list used internally to carry the data matrices
config
a list for controlling the optimization.
coefficient_path()
Extract the regularization path of a Networkfamily
Networkfamily$coefficient_path(precision = TRUE, corr = TRUE)
precision
Logical. Should the regularization path be extracted from the precision matrix Omega (TRUE
, default) or from the variance matrix Sigma (FALSE
)
corr
Logical. Should the matrix be transformed to (partial) correlation matrix before extraction? Defaults to TRUE
getBestModel()
Extract the best network in the family according to some criteria
Networkfamily$getBestModel(crit = c("BIC", "EBIC", "StARS"), stability = 0.9)
crit
character. Criterion used to perform the selection. If "StARS" is chosen but $stability
field is empty, will compute stability path.
stability
Only used for "StARS" criterion. A scalar indicating the target stability (= 1 - 2 beta) at which the network is selected. Default is 0.9
.
For BIC and EBIC criteria, higher is better.
plot()
Display various outputs (goodness-of-fit criteria, robustness, diagnostic) associated with a collection of network fits (a Networkfamily
)
Networkfamily$plot( criteria = c("loglik", "pen_loglik", "BIC", "EBIC"), reverse = FALSE, log.x = TRUE )
criteria
vector of characters. The criteria to plot in c("loglik", "pen_loglik", "BIC", "EBIC")
. Defaults to all of them.
reverse
A logical indicating whether to plot the value of the criteria in the "natural" direction (loglik - 0.5 penalty) or in the "reverse" direction (-2 loglik + penalty). Default to FALSE, i.e use the natural direction, on the same scale as the log-likelihood.
log.x
logical: should the x-axis be represented in log-scale? Default is TRUE
.
a ggplot
graph
plot_stars()
Plot stability path
Networkfamily$plot_stars(stability = 0.9, log.x = TRUE)
stability
scalar: the targeted level of stability using stability selection. Default is 0.9
.
log.x
logical: should the x-axis be represented in log-scale? Default is TRUE
.
a ggplot
graph
plot_objective()
Plot objective value of the optimization problem along the penalty path
Networkfamily$plot_objective()
a ggplot
graph
show()
User friendly print method
Networkfamily$show()
clone()
The objects of this class are cloneable with this method.
Networkfamily$clone(deep = FALSE)
deep
Whether to make a deep clone.
The functions PLNnetwork()
, ZIPLNnetwork()
and the classes PLNnetworkfit
, ZIPLNfit_sparse
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.