edgeseraser 0.6.0

Creator: bradpython12

Last updated:

Add to Cart

Description:

edgeseraser 0.6.0

Edges Eraser





Documentation: https://devmessias.github.io/edgeseraser
Source Code: https://github.com/devmessias/edgeseraser
PyPI: https://pypi.org/project/edgeseraser/

What is Edges Eraser?
This pkg aims to implement serveral filtering methods for (un)directed graphs.
Edge filtering methods allows to extract the backbone of a graph or sampling the most important edges. You can use edge filtering methods as a preprocessing step aiming to improve the performance/results of graph algorithms or to turn a graph visualtzation more asthetic.
Example
import networkx as nx
import edgeseraser as ee

g = nx.erdos_renyi_graph(100, 0.1)
ee.noise_score.filter_nx_graph(g)

g # filtered graph

Available methods and details



Method
Description
suitable for
limitations/restrictions/details




Noise Score
Filters edges with high noise score. Paper:1
Directed, Undirected, Weighted
Very good and fast! 4


Disparity
Dirichlet process filter (stick-breaking) Paper:2
Directed, Undirected, Weighted
There are some criticism regarding the use in undirected graphs3


[Pólya-Urn]
Filters edges with Pólya-Urn method. Paper:5
Directed, Undirected, Integer Weighted




Installation
pip install edgeseraser

Development

Clone/Fork this repository

git clone https://github.com/devmessias/edgeseraser


Requirements:

Poetry
Python 3.7+



make install
make init

Testing
make test

To run the static analysis, use the following command:
make mypy

Documentation
The documentation is automatically generated from the content of the docs directory and from the docstrings
of the public signatures of the source code. The documentation is updated and published as a Github project page
automatically as part each release.
To see the current state of the documentation in your browser, use the following command:
make docs-serve

The above command will start a local server on port 8000. Any changes to
the documentation and docstrings will be automatically reflected in your browser.
Pre-commit
Pre-commit hooks run all the auto-formatters (e.g. black, isort), linters (e.g. mypy, flake8), and other quality
checks to make sure the changeset is in good shape before a commit/push happens.
If you want e.g. want to run all checks manually for all files:
make pre-commit

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.