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

Quickstart

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.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.20.0-cp38-cp38-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.8Windows x86-64

scikit_network-0.20.0-cp38-cp38-win32.whl (1.2 MB view details)

Uploaded CPython 3.8Windows x86

scikit_network-0.20.0-cp38-cp38-manylinux2010_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ x86-64

scikit_network-0.20.0-cp38-cp38-macosx_10_9_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

scikit_network-0.20.0-cp37-cp37m-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.7mWindows x86-64

scikit_network-0.20.0-cp37-cp37m-win32.whl (1.2 MB view details)

Uploaded CPython 3.7mWindows x86

scikit_network-0.20.0-cp37-cp37m-manylinux2010_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.12+ x86-64

scikit_network-0.20.0-cp37-cp37m-macosx_10_9_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

scikit_network-0.20.0-cp36-cp36m-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.6mWindows x86-64

scikit_network-0.20.0-cp36-cp36m-win32.whl (1.2 MB view details)

Uploaded CPython 3.6mWindows x86

scikit_network-0.20.0-cp36-cp36m-manylinux2010_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.12+ x86-64

scikit_network-0.20.0-cp36-cp36m-macosx_10_9_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.6mmacOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: scikit_network-0.20.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.0

File hashes

Hashes for scikit_network-0.20.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 4d63cdde81354c3579aa5c5ebaaa8c1031f3e3a1e9eb739a766ae9417527c21c
MD5 d8c11f17d2a714b4f7645e0b5f26bf41
BLAKE2b-256 6f0a6c9b25691c9065805b15780dad98cd3e847d38e88cb780c5a2152bf255e3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.20.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.0

File hashes

Hashes for scikit_network-0.20.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 8784d091a1914a38c7a6b097efb9f1ade5bc75e4586b91b59a94bdbda8991b72
MD5 c8d13537f5f47f06d13215a01fe1901d
BLAKE2b-256 52d64b5a707bb4f47de0236e0ad23d1e968d09668205fae8e8363788226e0a65

See more details on using hashes here.

File details

Details for the file scikit_network-0.20.0-cp38-cp38-manylinux2010_x86_64.whl.

File metadata

  • Download URL: scikit_network-0.20.0-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 8.1 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.7

File hashes

Hashes for scikit_network-0.20.0-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 74eb9c5b3b17e8b9693ef2732e6512367d4a4a21b0688b6dd545d58ee1ff6768
MD5 8385e86552cea3ba890474e34946d9ee
BLAKE2b-256 6394cc547626a3bdfda090abd3800a9612dc487022a67fca5b09a3a2256f7327

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.20.0-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.4

File hashes

Hashes for scikit_network-0.20.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2c49db08387c1c2f61b4af8bf6ceb87f06dff40c109bb690e17c886dd92ebc09
MD5 768c6233130af14b866d7c7b8e21d0d7
BLAKE2b-256 33deef4c8168fed83f1740742e5c8f6a194ef85472af5dc9c86286f5ae7be4a5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.20.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.0

File hashes

Hashes for scikit_network-0.20.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 fc6fbcd9c1b8647dd14e8a9d6ee02847df4cee1aa58d912592e1066e5c4814ab
MD5 0d52610d197f884f8a0f5f0020ddb54e
BLAKE2b-256 78b5e2317def8b11c7f57e379af548b99171859bd4604e13a6ab1c0a9ea90438

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.20.0-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.0

File hashes

Hashes for scikit_network-0.20.0-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 6fe0ced2df19fa2fa48e02f96c895cbe2cd3dfb8652aedd3b345615e66006ee4
MD5 df6a8f7e369d5730b70b014365743305
BLAKE2b-256 ecaa8784836dc6383df84a92f623b25f4f2ae14f687ba6ef437a3e7059ccacf0

See more details on using hashes here.

File details

Details for the file scikit_network-0.20.0-cp37-cp37m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: scikit_network-0.20.0-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.5 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.7

File hashes

Hashes for scikit_network-0.20.0-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 3a4552c8e679848908aa3d9568089a55780b73558c4c268bc41b0051650c237e
MD5 ee379563dc384ad4bf14ae9a65d0313b
BLAKE2b-256 5e34da6e45a74e376dfafd17e783fff6e7c51fe5d8f18f5ef3bee37a1e6b16a3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.20.0-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.4

File hashes

Hashes for scikit_network-0.20.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bfe5adc7634e389b73748b244ceb41e61ef7a3ba8defe35cc00fcd9ac6b87d07
MD5 a75ab1809888b035740affa50a776905
BLAKE2b-256 df28132a30ecbfa7dbcee128f7d4b3f464139961566a895fa2b9270a914debe7

See more details on using hashes here.

File details

Details for the file scikit_network-0.20.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: scikit_network-0.20.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.0

File hashes

Hashes for scikit_network-0.20.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 93f7be531af44b334c68973098e73297286fedae896452b0ebbf7e8741c39f3c
MD5 cb709550320b7c6f4e8dab7a7f61c900
BLAKE2b-256 7c78f2b8ec5a13f945d741f92482802a201f8754e7fb335b773fcb575b204164

See more details on using hashes here.

File details

Details for the file scikit_network-0.20.0-cp36-cp36m-win32.whl.

File metadata

  • Download URL: scikit_network-0.20.0-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.0

File hashes

Hashes for scikit_network-0.20.0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 3ef25faa08949ef515799a3030d67228e4f3a3a75e94413c42799de062d804ec
MD5 a874cf2e95e2fac488ec98afd2fbcd64
BLAKE2b-256 a15e505d94cfc78954e9b2f423dd5b38adcf1bf62fc7d5053f9a532e46211084

See more details on using hashes here.

File details

Details for the file scikit_network-0.20.0-cp36-cp36m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: scikit_network-0.20.0-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.5 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.7

File hashes

Hashes for scikit_network-0.20.0-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 5bff787ab0e1794137f06296e7549bec4b4e42c0791d7527150020d2168c496e
MD5 4b1acef41e87a38bcf978e90595aeb27
BLAKE2b-256 623c29be62d3c66d232b138fb4a05d4fc936ec770685f7a7701007110c89b506

See more details on using hashes here.

File details

Details for the file scikit_network-0.20.0-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: scikit_network-0.20.0-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.6m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.4

File hashes

Hashes for scikit_network-0.20.0-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cdcc4e2c962e96725740baf5dee73d49cc4b2f7cc9c7cb6cf42c38676c015792
MD5 817258fb7913fbdab3b33ae83455a72f
BLAKE2b-256 d0246f9d5a4dedd252c3fd6ded7c517be08bf892f30be68e7ccb408f28c75529

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