Skip to main content

A set of python modules for graph statistics

Project description

graspologic

Paper shield Downloads shield graspologic CI codecov DOI License: MIT

graspologic is a package for graph statistical algorithms.

Notice: graspologic is the merger project of GraSPy and topologic

We're actively merging these projects into one, but you may see some references to graspy or topologic from time to time in documentation and issues. If you notice anything in the documentation referencing either graspy or topologic, please raise an issue (if one does not already exist) noting the missed titles so we can address all of them.

Overview

A graph, or network, provides a mathematically intuitive representation of data with some sort of relationship between items. For example, a social network can be represented as a graph by considering all participants in the social network as nodes, with connections representing whether each pair of individuals in the network are friends with one another. Naively, one might apply traditional statistical techniques to a graph, which neglects the spatial arrangement of nodes within the network and is not utilizing all of the information present in the graph. In this package, we provide utilities and algorithms designed for the processing and analysis of graphs with specialized graph statistical algorithms.

Documentation

The official documentation with usage is at https://graspy.neurodata.io/

Please visit the tutorial section in the official website for more in depth usage.

System Requirements

Hardware requirements

graspologic package requires only a standard computer with enough RAM to support the in-memory operations.

Software requirements

OS Requirements

graspologic is tested on the following OSes:

  • Linux x64
  • macOS x64
  • Windows 10 x64

And across the following versions of Python:

  • 3.6 (x64)
  • 3.7 (x64)
  • 3.8 (x64)

If you try to use graspologic for a different platform than the ones listed and notice any unexpected behavior, please feel free to raise an issue. It's better for ourselves and our users if we have concrete examples of things not working!

Python Dependencies

graspologic has the following direct dependencies:

hyppo
matplotlib
networkx
numpy
POT
seaborn
scikit-learn
scipy

Developers of graspologic will also have the following dependencies:

black
ipykernel
ipython
myp
nbsphinx
numpydoc
pandoc
pytest
pytest-cov
sphinx
sphinxcontrib-rawfiles
sphinx-rtd-theme

Please note that pandoc will also need to be installed for your system.

Installation Guide

Install from pip

pip install graspologic

Install from Github

git clone https://github.com/microsoft/graspologic
cd graspologic
python3 -m venv venv
source venv/bin/activate
python3 setup.py install

Contributing

We welcome contributions from anyone. Please see our contribution guidelines before making a pull request. Our issues page is full of places we could use help! If you have an idea for an improvement not listed there, please make an issue first so you can discuss with the developers.

License

This project is covered under the MIT License.

Issues

We appreciate detailed bug reports and feature requests (though we appreciate pull requests even more!). Please visit our issues page if you have questions or ideas.

Citing graspologic

If you find graspologic useful in your work, please cite the package via the GraSPy paper

Chung, J., Pedigo, B. D., Bridgeford, E. W., Varjavand, B. K., Helm, H. S., & Vogelstein, J. T. (2019). GraSPy: Graph Statistics in Python. Journal of Machine Learning Research, 20(158), 1-7.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

graspologic-0.1.0.dev324734979.tar.gz (97.8 kB view details)

Uploaded Source

File details

Details for the file graspologic-0.1.0.dev324734979.tar.gz.

File metadata

  • Download URL: graspologic-0.1.0.dev324734979.tar.gz
  • Upload date:
  • Size: 97.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

File hashes

Hashes for graspologic-0.1.0.dev324734979.tar.gz
Algorithm Hash digest
SHA256 47e3c82e0a05504e614bf2e02e9f8a8b9a8fbfc221aca0e3d3582e609319a2f5
MD5 15f8768839ba98874eac46e2f90aab8c
BLAKE2b-256 8a18a43985e7de18a132721f2506256c8d9ae71053606bc3ca06bcf056a18728

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page