Skip to main content

Graph algorithms

Project description

logo sknetwork https://img.shields.io/pypi/v/scikit-network.svg https://travis-ci.org/sknetwork-team/scikit-network.svg Documentation Status https://codecov.io/gh/sknetwork-team/scikit-network/branch/master/graph/badge.svg https://img.shields.io/pypi/pyversions/scikit-network.svg

Python package for the analysis of large graphs:

  • Memory-efficient representation as sparse matrices in the CSR format of scipy

  • Fast algorithms

  • Simple API inspired by scikit-learn

Resources

Quick Start

Install scikit-network:

$ pip install scikit-network

Import scikit-network in a Python project:

import sknetwork as skn

See examples in the tutorials; the notebooks are available here.

Citing

If you want to cite scikit-network, please refer to the publication in the Journal of Machine Learning Research:

@article{JMLR:v21:20-412,
  author  = {Thomas Bonald and Nathan de Lara and Quentin Lutz and Bertrand Charpentier},
  title   = {Scikit-network: Graph Analysis in Python},
  journal = {Journal of Machine Learning Research},
  year    = {2020},
  volume  = {21},
  number  = {185},
  pages   = {1-6},
  url     = {http://jmlr.org/papers/v21/20-412.html}
}

History

0.23.1 (2021-04-24)

  • Updated NumPy and SciPy requirements

0.23.0 (2021-04-23)

  • New push-based implementation of PageRank by Wenzhuo Zhao (#475)

  • Fixed cut_balanced in hierarchy

  • Dropped Python 3.6, wheels for Python 3.9 (switched to manylinux2014)

0.22.0 (2021-02-09)

  • Added hierarchical Louvain embedding by Quentin Lutz (#468)

  • Doc fixes and updates

  • Requirements update

0.21.0 (2021-01-29)

  • Added random projection embedding by Thomas Bonald (#461)

  • Added PCA-based embedding by Thomas Bonald (#461)

  • Added 64-bit support for Louvain by Flávio Juvenal (#450)

  • Added verbosity options for dataset loaders

  • Fixed Louvain embedding

  • Various doc and tutorial updates

0.20.0 (2020-10-20)

  • Added betweenness algorithm by Tiphaine Viard (#444)

0.19.3 (2020-09-17)

  • Added Louvain-based embedding

  • Fix documentation with new dataset website URLs

0.19.2 (2020-09-14)

  • Fix documentation with new dataset website URLs.

0.19.1 (2020-09-09)

  • Fix visualization features

  • Fix documentation

0.19.0 (2020-09-02)

  • Added link prediction module

  • Added pie-node visualization of memberships

  • Added Weisfeiler-Lehman graph coloring by Pierre Pebereau and Alexis Barreaux (#394)

  • Added Force Atlas 2 graph layout by Victor Manach and Rémi Jaylet (#396)

  • Added triangle listing algorithm for directed and undirected graph by Julien Simonnet and Yohann Robert (#376)

  • Added k-core decomposition algorithm by Julien Simonnet and Yohann Robert (#377)

  • Added k-clique listing algorithm by Julien Simonnet and Yohann Robert (#377)

  • Added color map option in visualization module

  • Updated NetSet URL

0.18.0 (2020-06-08)

  • Added Katz centrality

  • Refactor connectivity module into paths and topology

  • Refactor Diffusion into Dirichlet

  • Added parsers for adjacency list TSV and GraphML

  • Added shortest paths and distances

0.17.0 (2020-05-07)

  • Add clustering by label propagation

  • Add models

  • Add function to build graph from edge list

  • Change a parameter in SVG visualization functions

  • Minor corrections

0.16.0 (2020-04-30)

  • Refactor basics module into connectivity

  • Cython version for label propagation

  • Minor corrections

0.15.2 (2020-04-24)

  • Clarified requirements

  • Minor corrections

0.15.1 (2020-04-21)

  • Added OpenMP support for all platforms

0.15.0 (2020-04-20)

  • Updated ranking module : new pagerank solver, new HITS params, post-processing

  • Polynomes in linear algebra

  • Added meta.name attribute for Bunch

  • Minor corrections

0.14.0 (2020-04-17)

  • Added spring layout in embedding

  • Added label propagation in classification

  • Added save / load functions in data

  • Added display edges parameter in svg graph exports

  • Corrected typos in documentation

0.13.3 (2020-04-13)

  • Minor bug

0.13.2 (2020-04-13)

  • Added wheels for multiple platforms (OSX, Windows (32 & 64 bits) and many Linux) and Python version (3.6/3.7/3.8)

  • Documentation update (SVG dendrograms, tutorial updates)

0.13.1a (2020-04-09)

  • Minor bug

0.13.0a (2020-04-09)

  • Changed from Numba to Cython for better performance

  • Added visualization module

  • Added k-nearest neighbors classifier

  • Added Louvain hierarchy

  • Added predict method in embedding

  • Added soft clustering to clustering algorithms

  • Added soft classification to classification algorithms

  • Added graphs in data module

  • Various API change

0.12.1 (2020-01-20)

  • Added heat kernel based node classifier

  • Updated loaders for WikiLinks

  • Fixed file-related issues for Windows

0.12.0 (2019-12-10)

  • Added VerboseMixin for verbosity features

  • Added Loaders for WikiLinks & Konect databases

0.11.0 (2019-11-28)

  • sknetwork: new API for bipartite graphs

  • new module: Soft node classification

  • new module: Node classification

  • new module: data (merge toy graphs + loader)

  • clustering: Spectral Clustering

  • ranking: new algorithms

  • utils: K-neighbors

  • hierarchy: Spectral WardDense

  • data: loader (Vital Wikipedia)

0.10.1 (2019-08-26)

  • Minor bug

0.10.0 (2019-08-26)

  • Clustering (and related metrics) for directed and bipartite graphs

  • Hierarchical clustering (and related metrics) for directed and bipartite graphs

  • Fix bugs on embedding algorithms

0.9.0 (2019-07-24)

  • Change parser output

  • Fix bugs in ranking algorithms (zero-degree nodes)

  • Add notebooks

  • Import algorithms from scipy (shortest path, connected components, bfs/dfs)

  • Change SVD embedding (now in decreasing order of singular values)

0.8.2 (2019-07-19)

  • Minor bug

0.8.1 (2019-07-18)

  • Added diffusion ranking

  • Minor fixes

  • Minor doc tweaking

0.8.0 (2019-07-17)

  • Changed Louvain, BiLouvain, Paris and PageRank APIs

  • Changed PageRank method

  • Documentation overhaul

  • Improved Jupyter tutorials

0.7.1 (2019-07-04)

  • Added Algorithm class for nicer repr of some classes

  • Added Jupyter notebooks as tutorials in the docs

  • Minor fixes

0.7.0 (2019-06-24)

  • Updated PageRank

  • Added tests for Numba versioning

0.6.1 (2019-06-19)

  • Minor bug

0.6.0 (2019-06-19)

  • Largest connected component

  • Simplex projection

  • Sparse Low Rank Decomposition

  • Numba support for Paris

  • Various fixes and updates

0.5.0 (2019-04-18)

  • Unified Louvain.

0.4.0 (2019-04-03)

  • Added Louvain for directed graphs and ComboLouvain for bipartite graphs.

0.3.0 (2019-03-29)

  • Updated clustering module and documentation.

0.2.0 (2019-03-21)

  • First real release on PyPI.

0.1.1 (2018-05-29)

  • First release on PyPI.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

scikit_network-0.23.1-cp39-cp39-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.9Windows x86-64

scikit_network-0.23.1-cp39-cp39-win32.whl (1.3 MB view details)

Uploaded CPython 3.9Windows x86

scikit_network-0.23.1-cp39-cp39-manylinux2014_x86_64.whl (8.7 MB view details)

Uploaded CPython 3.9

scikit_network-0.23.1-cp39-cp39-macosx_10_9_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

scikit_network-0.23.1-cp38-cp38-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.8Windows x86-64

scikit_network-0.23.1-cp38-cp38-win32.whl (1.3 MB view details)

Uploaded CPython 3.8Windows x86

scikit_network-0.23.1-cp38-cp38-manylinux2014_x86_64.whl (9.0 MB view details)

Uploaded CPython 3.8

scikit_network-0.23.1-cp38-cp38-macosx_10_9_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

scikit_network-0.23.1-cp37-cp37m-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.7mWindows x86-64

scikit_network-0.23.1-cp37-cp37m-win32.whl (1.3 MB view details)

Uploaded CPython 3.7mWindows x86

scikit_network-0.23.1-cp37-cp37m-manylinux2014_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.7m

scikit_network-0.23.1-cp37-cp37m-macosx_10_9_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

File details

Details for the file scikit_network-0.23.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for scikit_network-0.23.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6ee5ca0a11dce4109bfd496f9c52a516ab93324fa58bf85a44f23e53ad047867
MD5 426a491a92c5654ba42eafc801827441
BLAKE2b-256 4638ac4407900fcaa506075df86481d428b3aa55381013d3813aa255e6e0ba03

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp39-cp39-win32.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp39-cp39-win32.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for scikit_network-0.23.1-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 622db15103b7383af2a30a2e9ffaf31cf9b083923aa4e4dc15fbefd3af7ba887
MD5 c7a0d4b22db401dec8013ecbaf812f22
BLAKE2b-256 a03028736f031d0a8af7a8870648c491b1275658198145c2d196da0cc01c83fa

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp39-cp39-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 8.7 MB
  • Tags: CPython 3.9
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.7

File hashes

Hashes for scikit_network-0.23.1-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9374095c4d71721bd99157f0b7559a0fb5b18fdd178badbd28b5a69513e29000
MD5 93ba61b08e0db33a76aa0d3578646842
BLAKE2b-256 ae6ce5398de05e2ac63b51580346c7c7add4f4c3cc90153becdc2e1fd7840121

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: CPython 3.9, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.2

File hashes

Hashes for scikit_network-0.23.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e1f9b63aa6b75338a713d8a86f8e49aed1028961b65d18a402ada989b91a8852
MD5 6a6665b5961f0ad0ac0749c19fce9b42
BLAKE2b-256 1b5cabb7ebadfeba891c2970ec9c0109afea0f3514c8f9aeac5db9a7aed98cea

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for scikit_network-0.23.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 9f42bc35a3cd407a0c5c9e120533c5f1fe482cb728130d14414dd22dee2900e0
MD5 2b9e06974de594fbc094006923b887f0
BLAKE2b-256 0ba6d95a370207c6b171eb6cfda3f29001a97609c62452a85b61b6c1b0f59d71

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp38-cp38-win32.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp38-cp38-win32.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for scikit_network-0.23.1-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 78687241994df1888fc92f83a73e065c78d8abc1697f944ffabcef010f944530
MD5 55d61333471906bc336c778877562c46
BLAKE2b-256 893ec1452ae90a899aa268d614d82bab949ca07b0fb5f85f1ee432b008a5a268

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp38-cp38-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 9.0 MB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.7

File hashes

Hashes for scikit_network-0.23.1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9e719fe886b3f04af1237ba6a1589ae33468f7e4d9c27850de51a07240b8e8f
MD5 78d933d6829c79245122246a60fbf922
BLAKE2b-256 c6b50fdb8803602e74557943965e165d93c760de3add0677bdd808aeabe63a8d

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.2

File hashes

Hashes for scikit_network-0.23.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3771152c82de5690ba30f8a980d7d47f1d1988af80bf700e4f1489063f04ef53
MD5 2f933e3ccbf44f960b249391114dd5f6
BLAKE2b-256 f31578cc3f652684ed0887dc71829f592fa0f6cb740df4957975ab8b6d1e946d

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for scikit_network-0.23.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 2227f91d578b1aee78ec833f1ba9e7cdd19425ca9cec5305e5300adbdc905375
MD5 4813a556e91de149c9cc96fce45819e6
BLAKE2b-256 2787336e610777ac84fe40d00654d88003ba6c93bd54cdaf8212f68499bd149b

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp37-cp37m-win32.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for scikit_network-0.23.1-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 3f0f9d2399d9e22c54ab28351ff369adc9ef5d2fecbcfea845bc91c3cd5aed06
MD5 e6b3a18a3330067399775d3070e53e5d
BLAKE2b-256 3854a90cf3b0e765159c7d73dec5081494bde2cf02718e6d6c82deef543b5318

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 8.4 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.7

File hashes

Hashes for scikit_network-0.23.1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f844ccaf34a7903176d63e49d42d42333410403b2b4e9a67583e34b508a134cd
MD5 4efd848dfdb286b9f495f0bcdb0aacde
BLAKE2b-256 bff4403eabdee313432825b6a35f4004d2f1715242e30d372e7bc22c6dccc744

See more details on using hashes here.

File details

Details for the file scikit_network-0.23.1-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: scikit_network-0.23.1-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.2

File hashes

Hashes for scikit_network-0.23.1-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 31fc1f1922f10eafaf72e08056792b24a6f72035a240256818434bfbacdd50ac
MD5 fb07ea523ba1457ff16bc62d52a23f0f
BLAKE2b-256 c18be125e93946e0e8a690c4e2e7d17c22dd033fbae64c11f8b0d3e53b883377

See more details on using hashes here.

Supported by

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