R/PLNnetworkfamily-S3methods.R
stability_selection.Rd
This function computes the StARS stability criteria over a path of penalties. If a path has already been computed, the functions stops with a message unless force = TRUE
has been specified.
stability_selection(
Robject,
subsamples = NULL,
control = PLNnetwork_param(),
force = FALSE
)
an object with class PLNnetworkfamily
, i.e. an output from PLNnetwork()
a list of vectors describing the subsamples. The number of vectors (or list length) determines th number of subsamples used in the stability selection. Automatically set to 20 subsamples with size 10*sqrt(n)
if n >= 144
and 0.8*n
otherwise following Liu et al. (2010) recommendations.
a list controlling the main optimization process in each call to PLNnetwork. See PLNnetwork()
for details.
force computation of the stability path, even if a previous one has been detected.
the list of subsamples. The estimated probabilities of selection of the edges are stored in the fields stability_path
of the initial Robject with class PLNnetworkfamily
data(trichoptera)
trichoptera <- prepare_data(trichoptera$Abundance, trichoptera$Covariate)
fits <- PLNnetwork(Abundance ~ 1, data = trichoptera)
#>
#> Initialization...
#> Adjusting 30 PLN with sparse inverse covariance estimation
#> Joint optimization alternating gradient descent and graphical-lasso
#> sparsifying penalty = 7.54443
sparsifying penalty = 6.96857
sparsifying penalty = 6.436665
sparsifying penalty = 5.94536
sparsifying penalty = 5.491556
sparsifying penalty = 5.07239
sparsifying penalty = 4.685219
sparsifying penalty = 4.3276
sparsifying penalty = 3.997278
sparsifying penalty = 3.692169
sparsifying penalty = 3.410349
sparsifying penalty = 3.15004
sparsifying penalty = 2.9096
sparsifying penalty = 2.687513
sparsifying penalty = 2.482377
sparsifying penalty = 2.2929
sparsifying penalty = 2.117885
sparsifying penalty = 1.956228
sparsifying penalty = 1.806911
sparsifying penalty = 1.668991
sparsifying penalty = 1.541598
sparsifying penalty = 1.42393
sparsifying penalty = 1.315242
sparsifying penalty = 1.214851
sparsifying penalty = 1.122122
sparsifying penalty = 1.036472
sparsifying penalty = 0.9573588
sparsifying penalty = 0.8842844
sparsifying penalty = 0.8167877
sparsifying penalty = 0.754443
#> Post-treatments
#> DONE!
if (FALSE) {
n <- nrow(trichoptera)
subs <- replicate(10, sample.int(n, size = n/2), simplify = FALSE)
stability_selection(nets, subsamples = subs)
}