Skip to content
forked from xgi-org/xgi

CompleX Group Interactions (XGI) provides an ecosystem for the analysis and representation of complex systems with group interactions.

License

Notifications You must be signed in to change notification settings

thomasrobiglio/xgi

 
 

Repository files navigation

XGI

CompleX Group Interactions (XGI) is a Python package for the representation, manipulation, and study of the structure, dynamics, and functions of complex systems with group (higher-order) interactions.

Test Status codecov Good First Issue

Sign up for our mailing list and follow XGI on Twitter or Mastodon!

Table of Contents:

Installation

XGI runs on Python 3.8 or higher.

To install the latest version of XGI, run the following command:

pip install xgi

To install this package locally:

  • Clone this repository
  • Navigate to the folder on your local machine
  • Run the following command:
pip install -e .["all"]
  • If that command does not work, you may try the following instead
pip install -e .\[all\]

Getting Started

To get started, take a look at the tutorials illustrating the library's basic functionality.

Documentation

For more documentation, see our Read The Docs page.

Corresponding Data

A number of higher-order datasets are available in the XGI-DATA repository and can be easily accessed with the load_xgi_data() function.

Contributing

If you want to contribute to this project, please make sure to read the code of conduct and the contributing guidelines.

The best way to contribute to XGI is by submitting a bug or request a new feature by opening a new issue.

To get more actively involved, you are invited to browse the issues page and choose one that you can work on. The core developers will be happy to help you understand the codebase and any other doubts you may have while working on your contribution.

If you are interested in the daily goings-on of XGI, you are invited to join our Zulip channel.

How to Cite

We acknowledge the importance of good software to support research, and we note that research becomes more valuable when it is communicated effectively. To demonstrate the value of XGI, we ask that you cite XGI in your work. Currently, the best way to cite XGI is to go to our repository page (if you haven't already) and click the "cite this repository" button on the right sidebar. This will generate a citation in your preferred format, and will also integrate well with citation managers.

Code of Conduct

Our full code of conduct, and how we enforce it, can be read in our repository.

License

Released under the 3-Clause BSD license (see LICENSE.md)

Copyright (C) 2021-2023 XGI Developers

Nicholas Landry [email protected]

Leo Torres [email protected]

Iacopo Iacopini [email protected]

Maxime Lucas [email protected]

Giovanni Petri [email protected]

Alice Patania [email protected]

Alice Schwarze [email protected]

The XGI library has copied or modified code from the HyperNetX and NetworkX libraries, the licenses of which can be found in our license file

Funding

The XGI package has been supported by NSF Grant 2121905, "HNDS-I: Using Hypergraphs to Study Spreading Processes in Complex Social Networks".

Other Resources

This library may not meet your needs and if this is this case, consider checking out these other resources:

  • HyperNetX: A package in Python for representing, analyzing, and visualizing hypergraphs.
  • Reticula: A package with a Python wrapper of C++ functions for representing, analyzing, and visualizing temporal and static graphs and hypergraphs.
  • SimpleHypergraphs.jl: A package in Julia for representing, analyzing, and generating hypergraphs.
  • HyperGraphs.jl: A package in Julia for representing, analyzing, and generating hypergraphs which may be oriented and weighted.
  • hyperG: A package in R for storing and analyzing hypergraphs
  • NetworkX: A package in Python for representing, analyzing, and visualizing networks.

About

CompleX Group Interactions (XGI) provides an ecosystem for the analysis and representation of complex systems with group interactions.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 75.8%
  • Python 24.2%