Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wgunderwood/motifcluster
Motif-based weighted spectral clustering in Python, R and Julia
https://github.com/wgunderwood/motifcluster
Last synced: about 1 month ago
JSON representation
Motif-based weighted spectral clustering in Python, R and Julia
- Host: GitHub
- URL: https://github.com/wgunderwood/motifcluster
- Owner: WGUNDERWOOD
- License: gpl-3.0
- Created: 2020-03-21T15:42:10.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-06-20T14:10:43.000Z (7 months ago)
- Last Synced: 2024-11-08T13:49:27.336Z (3 months ago)
- Language: Python
- Homepage:
- Size: 6.67 MB
- Stars: 25
- Watchers: 5
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# motifcluster
Motif-based spectral clustering of weighted directed networks
[![CI](https://github.com/WGUNDERWOOD/motifcluster/actions/workflows/CI.yml/badge.svg)](https://github.com/WGUNDERWOOD/motifcluster/actions/workflows/CI.yml)
[![license: GPLv3](https://img.shields.io/badge/license-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![codecov](https://codecov.io/gh/WGUNDERWOOD/motifcluster/branch/main/graph/badge.svg?token=DbGSOsocw6)](https://codecov.io/gh/WGUNDERWOOD/motifcluster)
[![python docs](https://img.shields.io/readthedocs/motifcluster?label=python%20docs)](https://motifcluster.readthedocs.io/en/latest/)
[![R docs](https://img.shields.io/readthedocs/motifcluster?label=R%20docs)](https://github.com/WGUNDERWOOD/motifcluster/tree/main/R/doc)
[![Julia docs](https://img.shields.io/readthedocs/motifcluster?label=Julia%20docs)](https://wgunderwood.github.io/motifcluster/stable/)## Introduction
This repository provides implementations of motif-based spectral clustering
of weighted directed networks in R, Python and Julia.
This code is based on methods detailed in
[Underwood, Elliott and Cucuringu, 2020],
which is available at
[arXiv:2004.01293](https://arxiv.org/abs/2004.01293).
These packages provide the capability for:- Building motif adjacency matrices
- Sampling random weighted directed networks
- Spectral embedding with motif adjacency matrices
- Motif-based spectral clusteringThe methods are all designed to run quickly on large sparse networks,
and are easy to install and use.### Branches
The main branch contains stable versions.
The develop branch may be unstable,
and is for development purposes only.### Authors
- [William George Underwood](https://wgunderwood.github.io/),
Princeton University
(Python, R, Julia, maintainer)
- [Andrew Elliott](https://www.turing.ac.uk/people/researchers/andrew-elliott),
The Alan Turing Institute
(Python)### License
This repository
and its included R, Python and Julia packages
are all licensed under
[GPLv3](http://gplv3.fsf.org/).## R package
The **motifcluster** R package is in the
[R](https://github.com/WGUNDERWOOD/motifcluster/tree/main/R)
directory.### Installation
The R package can be installed from CRAN with:
```
install.packages("motifcluster")
```### Dependencies
The R package has the following dependencies, available on CRAN:
- igraph
- Matrix
- RSpectra### Documentation
The package's manual is in the
[R/doc](https://github.com/WGUNDERWOOD/motifcluster/tree/main/R/doc)
directory.
R documentation files are provided for each function
available in the package.
An instructional vignette is in the
[R/vignettes](https://github.com/WGUNDERWOOD/motifcluster/tree/main/R/vignettes)
directory.## Python package
The **motifcluster** Python package is in the
[python](https://github.com/WGUNDERWOOD/motifcluster/tree/main/python)
directory.### Installation
The Python package can be installed from PyPI with:
```
pip install motifcluster
```Alternatively it can be installed with conda using:
```
conda install -c conda-forge motifcluster
```### Dependencies
The Python package has the following dependencies:
- Networkx
- Numpy
- Scipy
- Scikit-learn### Documentation
Full documentation is available at
[motifcluster.readthedocs.io](https://motifcluster.readthedocs.io/).## Julia package
The **MotifCluster** Julia package is in the
[julia](https://github.com/WGUNDERWOOD/motifcluster/tree/main/julia)
directory.### Installation
From the Julia General registry:
```
] add MotifCluster
```### Dependencies
- Aqua
- Clustering
- Distributions
- Graphs### Documentation
Documentation for the **MotifCluster** package is available on
[the web](https://wgunderwood.github.io/motifcluster/stable/).## Performance
The
[performance](https://github.com/WGUNDERWOOD/motifcluster/tree/main/performance)
directory contains scripts and plots relating to timing
the construction of motif adjacency matrices,
in R, Python and Julia.## Sticker
A high-resolution hexagonal sticker is available in the
[sticker](https://github.com/WGUNDERWOOD/motifcluster/tree/main/sticker)
directory.