Skip to main content

GGLasso

PyPI version fury.io PyPI license Documentation Status DOI arXiv

This package contains algorithms for solving General Graphical Lasso (GGLasso) problems, including single, multiple, as well as latent Graphical Lasso problems.

Docs | Examples

Getting started

Install via pip/conda

The package is available on pip and conda and can be installed with

pip install gglasso

or

conda install -c conda-forge gglasso

Developer installation

If you want to create a conda environment with full development dependencies (for building docs, testing,...), run:

conda env create -f environment.yml

After that, install gglasso in developer mode with the command

python -m pip install --editable .

Test your installation with

pytest tests/ -v

The glasso_problem class

GGLasso can solve multiple problem forumulations, e.g. single and multiple Graphical Lasso problems as well as with and without latent factors. Therefore, the main entry point for the user is the glasso_problem class which chooses automatically the correct solver and model selection functionality. See our documentation for all the details.

Algorithms

GGLasso contains algorithms for solving a multitude of Graphical Lasso problem formulations. For all the details, we refer to the solver overview in our documentation.

The package includes solvers for the following problems:

  • Single Graphical Lasso

  • Group and Fused Graphical Lasso
    We implemented the ADMM (see [2] and [3]) and a proximal point algorithm (see [4]).

  • Non-conforming Group Graphical Lasso
    A Group Graphical Lasso problem where not all variables exist in all instances/datasets.

  • Functional Graphical Lasso
    A variant of Graphical Lasso where each variables has a functional representation (e.g. by Fourier coefficients).

Moreover, for all problem formulation the package allows to model latent variables (Latent variable Graphical Lasso) in order to estimate a precision matrix of type sparse - low rank.

Citation

If you use GGLasso, please use the following citation

@article{Schaipp2021,
  doi = {10.21105/joss.03865},
  url = {https://doi.org/10.21105/joss.03865},
  year = {2021},
  publisher = {The Open Journal},
  volume = {6},
  number = {68},
  pages = {3865},
  author = {Fabian Schaipp and Oleg Vlasovets and Christian L. Müller},
  title = {GGLasso - a Python package for General Graphical Lasso computation},
  journal = {Journal of Open Source Software}
}

Community Guidelines

  1. Contributions and suggestions to the software are always welcome. Please, consult our contribution guidelines prior to submitting a pull request.
  2. Report issues or problems with the software using github’s issue tracker.
  3. Contributors must adhere to the Code of Conduct.

Metadata

Release files for gglasso 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gglasso 0.3.1
File Size Uploaded
gglasso-0.3.1.tar.gz 46.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gglasso 0.3.1
File Interpreter ABI Platform
gglasso-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 106.2 kB

Release files / gglasso-0.3.1.tar.gz

Download URL gglasso-0.3.1.tar.gz
Size 46.8 kB
Tags Source
SHA-256 checksum
How to use checksums
8b1a65175e8430babb61f24d3fd58ff87f97920ef1093655a91c3bc67976d557
BLAKE2b-256 checksum
How to use checksums
cb1c40d467513650fe62bbf4bad865bf5d704ecd3a42f1da743b4d74d87cee7a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.5

Release files / gglasso-0.3.1-py3-none-any.whl

Download URL gglasso-0.3.1-py3-none-any.whl
Size 59.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cd5f5fa7828c30ca87412df62ad5126ff0ba0247d1f130e10f610fa97a3b0ac3
BLAKE2b-256 checksum
How to use checksums
680dd9ae1294f83836fd17924ac6a6e55dfc616f5c88dbed31e44c42b731a97b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.5

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page