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

Uploaded CPython 3.8Windows x86-64

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

Uploaded CPython 3.8Windows x86

scikit_network-0.21.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.21.0-cp37-cp37m-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.7mWindows x86-64

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

Uploaded CPython 3.7mWindows x86

scikit_network-0.21.0-cp37-cp37m-macosx_10_9_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

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

Uploaded CPython 3.6mWindows x86-64

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

Uploaded CPython 3.6mWindows x86

scikit_network-0.21.0-cp36-cp36m-macosx_10_9_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.6mmacOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: scikit_network-0.21.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.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.0

File hashes

Hashes for scikit_network-0.21.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 122637541f2a252a66d933659fff5ceeeefef775c24046c731a4ec71e17f9168
MD5 317626828185f94aa511f9a69a126f33
BLAKE2b-256 74a2f7b55dfdff4e06ec8e8ca4764ba70605eea3fc795bdba0afa5d560b7606a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.21.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.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.0

File hashes

Hashes for scikit_network-0.21.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 823882ebb4e1b04e5bb7f856dd1d224fc6e43aca2bd99d4b91b999f901086411
MD5 bb514b0d111bef8bd826135e68db9f6e
BLAKE2b-256 e866c26bd433d9ece9872eb35d6909c36601919edeb238962bc4c448a8929b9a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.21.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.7.0 requests/2.25.1 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.4

File hashes

Hashes for scikit_network-0.21.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e9dc8d8d2de16b1072bc00e9d2987b66e76924d6645857f212591ee0cf9f47ad
MD5 b5ce80918ea974bc7332aba5edacc7c0
BLAKE2b-256 a016c158e52e655a76058dd0fc647581a22b22a0e3f8bf84c6fff362f6da6872

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.21.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.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.0

File hashes

Hashes for scikit_network-0.21.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 64bc909d02ed67e6b168aa48fae15a15b892ffb4c1569569ad34a257d7ab2afe
MD5 8c31d55095934e9b09fc6b5631b9898b
BLAKE2b-256 691c025c1a4a748df6f45c5f60cb31bc8aa04e322af31bff32df9ddb5db7be3c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.21.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.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.0

File hashes

Hashes for scikit_network-0.21.0-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 9e3831288242d2add54c8c7d2dfd5026862545056f19701dc0d772f3767b1e86
MD5 558630f51ee83681036a7a7bb59e771f
BLAKE2b-256 5ca87ccd32adb09d891fc53f08b97266210b53afec6dcd67e4b66a24cfeac1db

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for scikit_network-0.21.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a37fdf16deefab0b55294e9dc9753700c4e56260ef445edf1aca1825dc9ffc38
MD5 e8bc5df781b3993a60b968ebccdd3d83
BLAKE2b-256 5dd1d4b6ffec95215feea06484cdcf789f4bc56f134f760bca0456a5e387e599

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.21.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.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.0

File hashes

Hashes for scikit_network-0.21.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 61c7167621b73202b7019ddff2ac9456190a65c05a7f3ffb9cd16a040e5cf269
MD5 ab604e12e545ef58d98cbd7e43a10723
BLAKE2b-256 39a9c0707134f144df4febb01ec6d89226cb40ef0daf216b439d200b04a6486f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scikit_network-0.21.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.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.0

File hashes

Hashes for scikit_network-0.21.0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 07d6dd3ab8aa087e0663bbd5dc02bb5cd0500c7b7448043c9b95155caa3b10da
MD5 afb0fd59b3adeb21614a50bf0f275163
BLAKE2b-256 7d20cdb8fb625cebec1b97c642503c8269b88398b0c917831777d1758e23c0ba

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for scikit_network-0.21.0-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3c848b233f7bfd54205e9a6a6fc6e743d14fc42d2b37a341aeff33cb136245a0
MD5 10348e6025e6b7238289bc83c415885b
BLAKE2b-256 155dbaee631a6457322d68bf82dda7a29b7e2f9a4745385c3901056a9f983bdb

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