Perform sparse inverse covariance estimation for the Zero Inflated Poisson lognormal model using a variational algorithm. Iterate over a range of logarithmically spaced sparsity parameter values. Use the (g)lm syntax to specify the model (including covariates and offsets).

PLNnetwork(
  formula,
  data,
  subset,
  weights,
  penalties = NULL,
  control = PLNnetwork_param()
)

Arguments

formula

an object of class "formula": a symbolic description of the model to be fitted.

data

an optional data frame, list or environment (or object coercible by as.data.frame to a data frame) containing the variables in the model. If not found in data, the variables are taken from environment(formula), typically the environment from which lm is called.

subset

an optional vector specifying a subset of observations to be used in the fitting process.

weights

an optional vector of observation weights to be used in the fitting process.

penalties

an optional vector of positive real number controlling the level of sparsity of the underlying network. if NULL (the default), will be set internally. See PLNnetwork_param() for additional tuning of the penalty.

control

a list-like structure for controlling the optimization, with default generated by PLNnetwork_param(). See the corresponding documentation for details;

Value

an R6 object with class PLNnetworkfamily, which contains a collection of models with class PLNnetworkfit

See also

The classes PLNnetworkfamily and PLNnetworkfit, and the and the configuration function PLNnetwork_param().

Examples

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.353689 
	sparsifying penalty = 6.792388 
	sparsifying penalty = 6.273931 
	sparsifying penalty = 5.795047 
	sparsifying penalty = 5.352716 
	sparsifying penalty = 4.944148 
	sparsifying penalty = 4.566765 
	sparsifying penalty = 4.218188 
	sparsifying penalty = 3.896217 
	sparsifying penalty = 3.598823 
	sparsifying penalty = 3.324127 
	sparsifying penalty = 3.0704 
	sparsifying penalty = 2.836039 
	sparsifying penalty = 2.619566 
	sparsifying penalty = 2.419617 
	sparsifying penalty = 2.23493 
	sparsifying penalty = 2.064339 
	sparsifying penalty = 1.90677 
	sparsifying penalty = 1.761228 
	sparsifying penalty = 1.626795 
	sparsifying penalty = 1.502623 
	sparsifying penalty = 1.387929 
	sparsifying penalty = 1.28199 
	sparsifying penalty = 1.184137 
	sparsifying penalty = 1.093752 
	sparsifying penalty = 1.010267 
	sparsifying penalty = 0.9331545 
	sparsifying penalty = 0.8619276 
	sparsifying penalty = 0.7961374 
	sparsifying penalty = 0.7353689 

#>  Post-treatments
#>  DONE!